Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-28 Thread Blue Swirl
On Thu, Apr 26, 2012 at 13:43, Andreas Färber afaer...@suse.de wrote:
 Am 17.04.2012 22:45, schrieb Blue Swirl:
 On Mon, Apr 16, 2012 at 21:47, Anthony Liguori anth...@codemonkey.ws wrote:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:

 On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:

 On 04/16/2012 12:17 PM, Peter Maydell wrote:

 Here's my stab at it:
            Maintained:  Someone actually looks after it. The maintainer
                         will have a git subtree for this area and
 patches
                         are expected to go through it. Bug reports will
                         generally be investigated.


 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.


 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...


 I'd like to record T: as part of a way to validate pull requests.  I get
 slightly nervous about pull requests because it's an easy way to sneak code
 into the tree if you're malicious.

 Wouldn't signed PULL requests help? They need a very recent git though.

 Signed PULL requests can authenticate the person sending the PULL but
 not authorize what areas the contents of the PULL is allowed to touch.

Yes, but was that the problem Anthony had with PULLs? For a person
with malicious intentions, a pull would not necessarily be the tool of
choice, since it could lead to banning and investigations after
discovery. I thought Anthony was talking about MITM (or kernel.org
style breach) scenarios, there signed PULLs and/or signed commits
could help.

 Any definition of key - files (just like email - files) is going to be
 surrounded by grey zones and exceptions to the rule, so I guess
 verifying each PULL's diff stat and good judgment are the only weapons
 against malicious PULLs, given that PULLs have become quite popular
 these days and are no longer limited to recurring block, pci, ppc, etc.

How is a PULL any different from email, can you do something in a PULL
which is not possible with email? I think signed PULLs and commits
would give higher level of integrity and non-repudiation than unsigned
email.


 Andreas

 --
 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
 GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-28 Thread Andreas Färber
Am 28.04.2012 10:14, schrieb Blue Swirl:
 On Thu, Apr 26, 2012 at 13:43, Andreas Färber afaer...@suse.de wrote:
 Am 17.04.2012 22:45, schrieb Blue Swirl:
 On Mon, Apr 16, 2012 at 21:47, Anthony Liguori anth...@codemonkey.ws 
 wrote:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:
 On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:
 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.

 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...

 I'd like to record T: as part of a way to validate pull requests.  I get
 slightly nervous about pull requests because it's an easy way to sneak code
 into the tree if you're malicious.

 Wouldn't signed PULL requests help? They need a very recent git though.

 Signed PULL requests can authenticate the person sending the PULL but
 not authorize what areas the contents of the PULL is allowed to touch.
 
 Yes, but was that the problem Anthony had with PULLs? For a person
 with malicious intentions, a pull would not necessarily be the tool of
 choice, since it could lead to banning and investigations after
 discovery. I thought Anthony was talking about MITM (or kernel.org
 style breach) scenarios,

Didn't read that into his words. To me it sounded like he wanted for his
mailbox scripts to be able to automatically decide whether to accept a
PULL (which he receives by unsigned email) or not, based on the tree
documented in MAINTAINERS.

On IRC however Anthony turned towards trusting persons not trees. That
would easily be supportable by signed PULLs I guess, by whitelisting
public keys.

 Any definition of key - files (just like email - files) is going to be
 surrounded by grey zones and exceptions to the rule, so I guess
 verifying each PULL's diff stat and good judgment are the only weapons
 against malicious PULLs, given that PULLs have become quite popular
 these days and are no longer limited to recurring block, pci, ppc, etc.
 
 How is a PULL any different from email, can you do something in a PULL
 which is not possible with email? I think signed PULLs and commits
 would give higher level of integrity and non-repudiation than unsigned
 email.

A PULL is a standardized form of unsigned email. It contains a From:, an
upstream commit hash, a branch/tag name and usually a diffstat and list
of commits. So it's more than just a personal mail naming a branch.

The diffstat can easily be verified by fetching from the branch and
recalculating it from the commit hash in the message. This could then be
checked against the file patterns in MAINTAINERS.

But like I said, there's exceptions - my upcoming Cocoa PULL will
include changes to configure and block/*, both not file patterns of the
Cocoa subsystem, but semantically related and coordinated by mail/IRC.
Therefore my saying, validating PULLs against MAINTAINERS sections is
not going to work; validating PULLs for interim projects (like
QOM'ifications) not documented in MAINTAINERS are not going to work, nor
is if no one replies to it after X days send me a PULL. Thus we can
try to whitelist where to PULL from, but we cannot blacklist PULLs not
whitelisted, they'll still need to be reviewed individually with some
common sense.

What would be neat btw is if incoming PULLs could automatically be
checked by our build bots (we can dream).

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-28 Thread Blue Swirl
On Sat, Apr 28, 2012 at 11:42, Andreas Färber afaer...@suse.de wrote:
 Am 28.04.2012 10:14, schrieb Blue Swirl:
 On Thu, Apr 26, 2012 at 13:43, Andreas Färber afaer...@suse.de wrote:
 Am 17.04.2012 22:45, schrieb Blue Swirl:
 On Mon, Apr 16, 2012 at 21:47, Anthony Liguori anth...@codemonkey.ws 
 wrote:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:
 On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:
 * For something to be marked Maintained, there must be a person on M: 
 and
 there must be a git tree for the subsystem.

 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...

 I'd like to record T: as part of a way to validate pull requests.  I get
 slightly nervous about pull requests because it's an easy way to sneak 
 code
 into the tree if you're malicious.

 Wouldn't signed PULL requests help? They need a very recent git though.

 Signed PULL requests can authenticate the person sending the PULL but
 not authorize what areas the contents of the PULL is allowed to touch.

 Yes, but was that the problem Anthony had with PULLs? For a person
 with malicious intentions, a pull would not necessarily be the tool of
 choice, since it could lead to banning and investigations after
 discovery. I thought Anthony was talking about MITM (or kernel.org
 style breach) scenarios,

 Didn't read that into his words. To me it sounded like he wanted for his
 mailbox scripts to be able to automatically decide whether to accept a
 PULL (which he receives by unsigned email) or not, based on the tree
 documented in MAINTAINERS.

 On IRC however Anthony turned towards trusting persons not trees. That
 would easily be supportable by signed PULLs I guess, by whitelisting
 public keys.

 Any definition of key - files (just like email - files) is going to be
 surrounded by grey zones and exceptions to the rule, so I guess
 verifying each PULL's diff stat and good judgment are the only weapons
 against malicious PULLs, given that PULLs have become quite popular
 these days and are no longer limited to recurring block, pci, ppc, etc.

 How is a PULL any different from email, can you do something in a PULL
 which is not possible with email? I think signed PULLs and commits
 would give higher level of integrity and non-repudiation than unsigned
 email.

 A PULL is a standardized form of unsigned email. It contains a From:, an
 upstream commit hash, a branch/tag name and usually a diffstat and list
 of commits. So it's more than just a personal mail naming a branch.

 The diffstat can easily be verified by fetching from the branch and
 recalculating it from the commit hash in the message. This could then be
 checked against the file patterns in MAINTAINERS.

 But like I said, there's exceptions - my upcoming Cocoa PULL will
 include changes to configure and block/*, both not file patterns of the
 Cocoa subsystem, but semantically related and coordinated by mail/IRC.
 Therefore my saying, validating PULLs against MAINTAINERS sections is
 not going to work; validating PULLs for interim projects (like
 QOM'ifications) not documented in MAINTAINERS are not going to work, nor
 is if no one replies to it after X days send me a PULL. Thus we can
 try to whitelist where to PULL from, but we cannot blacklist PULLs not
 whitelisted, they'll still need to be reviewed individually with some
 common sense.

There's also plenty of code which is not covered by MAINTAINERS, also
qemu-trivial could touch anything.


 What would be neat btw is if incoming PULLs could automatically be
 checked by our build bots (we can dream).

We could also dream of having bots to run checkpatch.pl on incoming
patches, or buildbots that use clang analyzer or cppcheck instead of
GCC, or run tests and check test coverage with gcov. We could also use
Gerrit for patch review.


 Andreas

 --
 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
 GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-26 Thread Andreas Färber
Am 17.04.2012 22:45, schrieb Blue Swirl:
 On Mon, Apr 16, 2012 at 21:47, Anthony Liguori anth...@codemonkey.ws wrote:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:

 On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:

 On 04/16/2012 12:17 PM, Peter Maydell wrote:

 Here's my stab at it:
Maintained:  Someone actually looks after it. The maintainer
 will have a git subtree for this area and
 patches
 are expected to go through it. Bug reports will
 generally be investigated.


 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.


 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...


 I'd like to record T: as part of a way to validate pull requests.  I get
 slightly nervous about pull requests because it's an easy way to sneak code
 into the tree if you're malicious.
 
 Wouldn't signed PULL requests help? They need a very recent git though.

Signed PULL requests can authenticate the person sending the PULL but
not authorize what areas the contents of the PULL is allowed to touch.
Any definition of key - files (just like email - files) is going to be
surrounded by grey zones and exceptions to the rule, so I guess
verifying each PULL's diff stat and good judgment are the only weapons
against malicious PULLs, given that PULLs have become quite popular
these days and are no longer limited to recurring block, pci, ppc, etc.

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-17 Thread Kevin Wolf
Am 16.04.2012 23:47, schrieb Anthony Liguori:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:
 I don't particularly object to providing a T: line for
 target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
 since we don't have the same tendency the kernel does to having subtrees
 which can diverge significantly because of large amounts of change waiting
 for a merge window. I wouldn't expect people to base arm patches against
 arm-devs.next rather than master, for instance. (Maybe I should??)
 Anyway, I think if we have T: lines in MAINTAINERS it should be because
 (and we should clearly say that) that is the tree that we expect patches
 in that area to apply to.
 
 I think we should (and do already?) say that all patches on qemu-devel should 
 be 
 against qemu.git unless otherwise indicated in the patch subject.

In very busy phases I have asked people to base their patches on the
block branch in order to avoid conflicts and save unnecessary work for
both the author and the maintainer.

A patch based on master that conflicts with the subtree is useless, it
must be rebased anyway. So the theory is that you base patches sent to
me on the block branch rather than master. In practice, the difference
between qemu subtrees is so small that in most cases basing directly on
master works just fine, but it's not the safe way and I may ask you to
rebase.

Kevin



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-17 Thread Andreas Färber
Am 16.04.2012 23:24, schrieb Peter Maydell:
 On 16 April 2012 18:42, Anthony Liguori anth...@codemonkey.ws wrote:
 On 04/16/2012 12:17 PM, Peter Maydell wrote:
 Here's my stab at it:
Maintained:  Someone actually looks after it. The maintainer
 will have a git subtree for this area and patches
 are expected to go through it. Bug reports will
 generally be investigated.

 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.
 
 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...
 
 I don't particularly object to providing a T: line for
 target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
 since we don't have the same tendency the kernel does to having subtrees
 which can diverge significantly because of large amounts of change waiting
 for a merge window. I wouldn't expect people to base arm patches against
 arm-devs.next rather than master, for instance. (Maybe I should??)

I'm kind of expecting you to, during the Hard Freeze and in case of
acceptable patches not for 1.1 during the Soft Freeze.

Which is also my problems towards T:, most maintainers don't have trees
dedicated to the subsystem but their personal tree with multiple
branches. For example, the branch you'd whitelist for pulling ppc from
is ppc-for-upstream, whereas contributors should base patches on either
ppc-next or (guessing) ppc-1.1. In Peter's case there's separate
branches for arm-devs and targer-arm.

Officially the branch name is not part of the documented syntax but IMO
it's useful for users reading MAINTAINERS.
Whereas Anthony seems to be suggesting using MAINTAINERS as a tool for
committers, of which currently only two actively handle PULLs.

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-17 Thread Peter Maydell
On 17 April 2012 09:59, Andreas Färber afaer...@suse.de wrote:
 Am 16.04.2012 23:24, schrieb Peter Maydell:
 I wouldn't expect people to base arm patches against
 arm-devs.next rather than master, for instance. (Maybe I should??)

 I'm kind of expecting you to, during the Hard Freeze and in case of
 acceptable patches not for 1.1 during the Soft Freeze.

Mm. Depends how much not-for-1.1 stuff arrives during soft/hardfreeze.

 Which is also my problems towards T:, most maintainers don't have trees
 dedicated to the subsystem but their personal tree with multiple
 branches. For example, the branch you'd whitelist for pulling ppc from
 is ppc-for-upstream, whereas contributors should base patches on either
 ppc-next or (guessing) ppc-1.1. In Peter's case there's separate
 branches for arm-devs and targer-arm.

I use .next vs .for-upstream as well.

 Officially the branch name is not part of the documented syntax but IMO
 it's useful for users reading MAINTAINERS.
 Whereas Anthony seems to be suggesting using MAINTAINERS as a tool for
 committers, of which currently only two actively handle PULLs.

I don't particularly mind which we do, but I do think that we
should be clear about what the semantics are and how we expect
people to use this information.

-- PMM



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-17 Thread Anthony Liguori

On 04/17/2012 02:53 AM, Kevin Wolf wrote:

Am 16.04.2012 23:47, schrieb Anthony Liguori:

On 04/16/2012 04:24 PM, Peter Maydell wrote:

I don't particularly object to providing a T: line for
target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
since we don't have the same tendency the kernel does to having subtrees
which can diverge significantly because of large amounts of change waiting
for a merge window. I wouldn't expect people to base arm patches against
arm-devs.next rather than master, for instance. (Maybe I should??)
Anyway, I think if we have T: lines in MAINTAINERS it should be because
(and we should clearly say that) that is the tree that we expect patches
in that area to apply to.


I think we should (and do already?) say that all patches on qemu-devel should be
against qemu.git unless otherwise indicated in the patch subject.


In very busy phases I have asked people to base their patches on the
block branch in order to avoid conflicts and save unnecessary work for
both the author and the maintainer.


Yeah, I think this is really the exception that proves the rule.


A patch based on master that conflicts with the subtree is useless, it
must be rebased anyway. So the theory is that you base patches sent to
me on the block branch rather than master. In practice, the difference
between qemu subtrees is so small that in most cases basing directly on
master works just fine, but it's not the safe way and I may ask you to
rebase.


I think the block subtree is really an exception simply because it's the oldest 
and best established subtree.  I think requesting patches be against it is 
reasonable.


It's up to you as to what you want the standard policy to be.  If you want 
patches against the block tree normally, I'd just request having folks add a tag 
like they do for the qemu-kvm tree ([uq/master]).


Regards,

Anthony Liguori



Kevin





Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-17 Thread Blue Swirl
On Mon, Apr 16, 2012 at 21:47, Anthony Liguori anth...@codemonkey.ws wrote:
 On 04/16/2012 04:24 PM, Peter Maydell wrote:

 On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:

 On 04/16/2012 12:17 PM, Peter Maydell wrote:

 Here's my stab at it:
            Maintained:  Someone actually looks after it. The maintainer
                         will have a git subtree for this area and
 patches
                         are expected to go through it. Bug reports will
                         generally be investigated.


 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.


 Do you mean there must be a git tree or there must be a git tree
 listed under T: for this area ? We have I think several subsystems
 where things do come in via pullreq for a submaintainer tree but that
 tree isn't officially public except in as much as the branch name
 for the pullreq is always the same...


 I'd like to record T: as part of a way to validate pull requests.  I get
 slightly nervous about pull requests because it's an easy way to sneak code
 into the tree if you're malicious.

Wouldn't signed PULL requests help? They need a very recent git though.


 I'd prefer if we kept an official whitelist of trees in MAINTAINERS verses
 relying on my local .git/config.



 I don't particularly object to providing a T: line for
 target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
 since we don't have the same tendency the kernel does to having subtrees
 which can diverge significantly because of large amounts of change waiting
 for a merge window. I wouldn't expect people to base arm patches against
 arm-devs.next rather than master, for instance. (Maybe I should??)
 Anyway, I think if we have T: lines in MAINTAINERS it should be because
 (and we should clearly say that) that is the tree that we expect patches
 in that area to apply to.


 I think we should (and do already?) say that all patches on qemu-devel
 should be against qemu.git unless otherwise indicated in the patch subject.

 Regards,

 Anthony Liguori


 -- PMM






Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Anthony Liguori

On 04/16/2012 09:31 AM, Andreas Färber wrote:

Hello,

Sparked by conversations with Anthony and the discussion on a recent KVM call,
I've started overhauling our MAINTAINERS file.

Patches 1-5 fix syntax issues.

Patch 6 documents our orphaned stable trees, as requested by Anthony.

Patch 7 drops the orphaned and by now completely busted darwin-user emulation.

Apparently we have unwritten eligibility criteria for new maintainers in terms
of qemu-devel participation and patch handling quality, but no formal mechanism
to handle replacing lost maintainers.

The current practice has become for Anthony to expect people listed in a
MAINTAINERS section with S: Maintained to handle patches in that area themselves
and to supply a [PULL] request to get those changes into qemu.git.
This has the downside that patches falling into an area, where a maintainer
is listed but not responding, simply bitrot on the list.


I think we ought to aggressively downgrade subsystems if this is really a 
problem.  Unfortunately, it's hard to judge whether this is a problem until 
someone complains about a specific subsystem.



Patches 8-11 therefore propose to upgrade some actively maintained sections
to Maintained to formalize the Maintained vs. Odd Fixes semantics:



Maintained means PULLs from maintainer expected.


Yes.  More specifically, if something is Maintained, I would expect the patch to 
always come in through that specific tree.



Odd Fixes means Reviewed-by/Acked-by or committer's gut feeling is sufficient.


Yes.  Odd Fixes and below means the patch is fair game but that the listed M: 
probably ought to at least be consulted.


Regards,

Anthony Liguori



Patches 12-13 propose to downgrade the TCG targets in question to Odd Fixes,
to allow committers to handle patches without maintainers' approval.
Not being a committer, I don't want to remove any maintainer, but if someone
doesn't want to and is no longer able to act as maintainer, then please post
a patch yourselves updating MAINTAINERS accordingly. I for one would be happy
to hand over Cocoa maintenance to someone using it more frequently than me
these days, just like I would be happy to let someone else maintain
Solaris/illumos support with a little bit more experience.
The BSDs might also want to formalize what person or mailing list patches
should go through.

Patch 14 documents me volunteering to maintain the 0.15 stable tree.

Regards,
Andreas

Cc: Anthony Liguorianth...@codemonkey.ws
Cc: Paul Brookp...@codesourcery.com
Cc: Aurélien Jarnoaurel...@aurel32.net

Andreas Färber (14):
   MAINTAINERS: Fix PC file pattern
   MAINTAINERS: Fix virtio-9p file pattern
   MAINTAINERS: Fix TCI file pattern
   MAINTAINERS: Indicate type of SCM
   MAINTAINERS: Fix SCM tree for virtio-9p
   MAINTAINERS: Document all stable trees
   Drop darwin-user
   MAINTAINERS: Upgrade PReP to Maintained
   MAINTAINERS: Upgrade Cocoa to Maintained
   MAINTAINERS: Upgrade IDE to Maintained
   MAINTAINERS: Upgrade NBD to Maintained
   MAINTAINERS: Downgrade target-m68k to Odd Fixes
   MAINTAINERS: Downgrade target-mips and target-sh4 to Odd Fixes
   MAINTAINERS: Take over 0.15 maintenance

  MAINTAINERS  |   64 +-
  Makefile.target  |   28 -
  configure|   25 -
  darwin-user/commpage.c   |  357 
  darwin-user/ioctls.h |4 -
  darwin-user/ioctls_types.h   |1 -
  darwin-user/machload.c   |  902 ---
  darwin-user/main.c   | 1027 --
  darwin-user/mmap.c   |  409 -
  darwin-user/qemu.h   |  178 
  darwin-user/signal.c |  452 --
  darwin-user/syscall.c| 1566 --
  darwin-user/syscalls.h   |  384 -
  default-configs/i386-darwin-user.mak |1 -
  default-configs/ppc-darwin-user.mak  |3 -
  qemu-doc.texi|   90 --
  qemu-tech.texi   |3 +-
  17 files changed, 44 insertions(+), 5450 deletions(-)
  delete mode 100644 darwin-user/commpage.c
  delete mode 100644 darwin-user/ioctls.h
  delete mode 100644 darwin-user/ioctls_types.h
  delete mode 100644 darwin-user/machload.c
  delete mode 100644 darwin-user/main.c
  delete mode 100644 darwin-user/mmap.c
  delete mode 100644 darwin-user/qemu.h
  delete mode 100644 darwin-user/signal.c
  delete mode 100644 darwin-user/syscall.c
  delete mode 100644 darwin-user/syscalls.h
  delete mode 100644 default-configs/i386-darwin-user.mak
  delete mode 100644 default-configs/ppc-darwin-user.mak






Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Andreas Färber
Am 16.04.2012 18:00, schrieb Anthony Liguori:
 On 04/16/2012 09:31 AM, Andreas Färber wrote:
 Hello,

 Sparked by conversations with Anthony and the discussion on a recent
 KVM call,
 I've started overhauling our MAINTAINERS file.

 Patches 1-5 fix syntax issues.

 Patch 6 documents our orphaned stable trees, as requested by Anthony.

 Patch 7 drops the orphaned and by now completely busted darwin-user
 emulation.

 Apparently we have unwritten eligibility criteria for new maintainers
 in terms
 of qemu-devel participation and patch handling quality, but no formal
 mechanism
 to handle replacing lost maintainers.

 The current practice has become for Anthony to expect people listed in a
 MAINTAINERS section with S: Maintained to handle patches in that area
 themselves
 and to supply a [PULL] request to get those changes into qemu.git.
 This has the downside that patches falling into an area, where a
 maintainer
 is listed but not responding, simply bitrot on the list.
 
 I think we ought to aggressively downgrade subsystems if this is really
 a problem.  Unfortunately, it's hard to judge whether this is a problem
 until someone complains about a specific subsystem.
 
 Patches 8-11 therefore propose to upgrade some actively maintained
 sections
 to Maintained to formalize the Maintained vs. Odd Fixes semantics:
 
 Maintained means PULLs from maintainer expected.
 
 Yes.  More specifically, if something is Maintained, I would expect the
 patch to always come in through that specific tree.
 
 Odd Fixes means Reviewed-by/Acked-by or committer's gut feeling is
 sufficient.
 
 Yes.  Odd Fixes and below means the patch is fair game but that the
 listed M: probably ought to at least be consulted.

The current status descriptions seem to be a copy from Linux. Could you
address Kevin's comment by proposing a change to the descriptions in our
copy?

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Peter Maydell
On 16 April 2012 17:03, Andreas Färber afaer...@suse.de wrote:
 Am 16.04.2012 18:00, schrieb Anthony Liguori:
 On 04/16/2012 09:31 AM, Andreas Färber wrote:
 Hello,

 Sparked by conversations with Anthony and the discussion on a recent
 KVM call,
 I've started overhauling our MAINTAINERS file.

 Patches 1-5 fix syntax issues.

 Patch 6 documents our orphaned stable trees, as requested by Anthony.

 Patch 7 drops the orphaned and by now completely busted darwin-user
 emulation.

 Apparently we have unwritten eligibility criteria for new maintainers
 in terms
 of qemu-devel participation and patch handling quality, but no formal
 mechanism
 to handle replacing lost maintainers.

 The current practice has become for Anthony to expect people listed in a
 MAINTAINERS section with S: Maintained to handle patches in that area
 themselves
 and to supply a [PULL] request to get those changes into qemu.git.
 This has the downside that patches falling into an area, where a
 maintainer
 is listed but not responding, simply bitrot on the list.

 I think we ought to aggressively downgrade subsystems if this is really
 a problem.  Unfortunately, it's hard to judge whether this is a problem
 until someone complains about a specific subsystem.

 Patches 8-11 therefore propose to upgrade some actively maintained
 sections
 to Maintained to formalize the Maintained vs. Odd Fixes semantics:

 Maintained means PULLs from maintainer expected.

 Yes.  More specifically, if something is Maintained, I would expect the
 patch to always come in through that specific tree.

 Odd Fixes means Reviewed-by/Acked-by or committer's gut feeling is
 sufficient.

 Yes.  Odd Fixes and below means the patch is fair game but that the
 listed M: probably ought to at least be consulted.

 The current status descriptions seem to be a copy from Linux. Could you
 address Kevin's comment by proposing a change to the descriptions in our
 copy?

Here's my stab at it:

   Supported:   Someone is actually paid to look after this. This
is the same as Maintained (see below) but you might
have a greater chance of faster response times.
   Maintained:  Someone actually looks after it. The maintainer
will have a git subtree for this area and patches
are expected to go through it. Bug reports will
generally be investigated.
   Odd Fixes:   It has a maintainer but they don't have time to do
much other than throw the odd patch in. Patches are
applied directly to master; there is no subtree,
and no requirement for an Ack from the maintainer
for a patch to be applied. Bug reports without
reasonable quality patches attached are likely to
go unfixed.
   Orphan:  No current maintainer. Send patches to qemu-devel;
persistence may be required to get something reviewed
and committed, especially if it's a large change.
   Obsolete:Old code. Something tagged obsolete generally means
it has been replaced by a better system and you
should be using that.

(I dropped the parenthetical about becoming a maintainer of an orphan
area; if we want to keep that I think an expanded section about how
to demonstrate that you might be capable of the job, how/when to add
sections for new code/drivers/boards, etc would be more useful.)

-- PMM



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Peter Maydell
On 16 April 2012 18:17, Peter Maydell peter.mayd...@linaro.org wrote:
 Here's my stab at it:

           Supported:   Someone is actually paid to look after this. This
                        is the same as Maintained (see below) but you might
                        have a greater chance of faster response times.
           Maintained:  Someone actually looks after it. The maintainer
                        will have a git subtree for this area and patches
                        are expected to go through it. Bug reports will
                        generally be investigated.

...or we could just drop Supported altogether as not being a particularly
useful distinction for us.

-- PMM


Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Anthony Liguori

On 04/16/2012 12:17 PM, Peter Maydell wrote:

On 16 April 2012 17:03, Andreas Färberafaer...@suse.de  wrote:

Am 16.04.2012 18:00, schrieb Anthony Liguori:

On 04/16/2012 09:31 AM, Andreas Färber wrote:

Hello,

Sparked by conversations with Anthony and the discussion on a recent
KVM call,
I've started overhauling our MAINTAINERS file.

Patches 1-5 fix syntax issues.

Patch 6 documents our orphaned stable trees, as requested by Anthony.

Patch 7 drops the orphaned and by now completely busted darwin-user
emulation.

Apparently we have unwritten eligibility criteria for new maintainers
in terms
of qemu-devel participation and patch handling quality, but no formal
mechanism
to handle replacing lost maintainers.

The current practice has become for Anthony to expect people listed in a
MAINTAINERS section with S: Maintained to handle patches in that area
themselves
and to supply a [PULL] request to get those changes into qemu.git.
This has the downside that patches falling into an area, where a
maintainer
is listed but not responding, simply bitrot on the list.


I think we ought to aggressively downgrade subsystems if this is really
a problem.  Unfortunately, it's hard to judge whether this is a problem
until someone complains about a specific subsystem.


Patches 8-11 therefore propose to upgrade some actively maintained
sections
to Maintained to formalize the Maintained vs. Odd Fixes semantics:



Maintained means PULLs from maintainer expected.


Yes.  More specifically, if something is Maintained, I would expect the
patch to always come in through that specific tree.


Odd Fixes means Reviewed-by/Acked-by or committer's gut feeling is
sufficient.


Yes.  Odd Fixes and below means the patch is fair game but that the
listed M: probably ought to at least be consulted.


The current status descriptions seem to be a copy from Linux. Could you
address Kevin's comment by proposing a change to the descriptions in our
copy?


Here's my stab at it:

Supported:   Someone is actually paid to look after this. This
 is the same as Maintained (see below) but you might
 have a greater chance of faster response times.


Let's drop Supported as a status.


Maintained:  Someone actually looks after it. The maintainer
 will have a git subtree for this area and patches
 are expected to go through it. Bug reports will
 generally be investigated.


* For something to be marked Maintained, there must be a person on M: and there 
must be a git tree for the subsystem.



Odd Fixes:   It has a maintainer but they don't have time to do
 much other than throw the odd patch in. Patches are
 applied directly to master; there is no subtree,
 and no requirement for an Ack from the maintainer
 for a patch to be applied. Bug reports without
 reasonable quality patches attached are likely to
 go unfixed.
Orphan:  No current maintainer. Send patches to qemu-devel;
 persistence may be required to get something reviewed
 and committed, especially if it's a large change.
Obsolete:Old code. Something tagged obsolete generally means
 it has been replaced by a better system and you
 should be using that.


I like these descriptions a lot more.

Regards,

Anthony Liguori



(I dropped the parenthetical about becoming a maintainer of an orphan
area; if we want to keep that I think an expanded section about how
to demonstrate that you might be capable of the job, how/when to add
sections for new code/drivers/boards, etc would be more useful.)

-- PMM





Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Anthony Liguori

On 04/16/2012 12:40 PM, Peter Maydell wrote:

On 16 April 2012 18:17, Peter Maydellpeter.mayd...@linaro.org  wrote:

Here's my stab at it:

   Supported:   Someone is actually paid to look after this. This
is the same as Maintained (see below) but you might
have a greater chance of faster response times.
   Maintained:  Someone actually looks after it. The maintainer
will have a git subtree for this area and patches
are expected to go through it. Bug reports will
generally be investigated.


...or we could just drop Supported altogether as not being a particularly
useful distinction for us.


Ack.

Regards,

Anthony Liguori



-- PMM





Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Peter Maydell
On 16 April 2012 18:42, Anthony Liguori anth...@codemonkey.ws wrote:
 On 04/16/2012 12:17 PM, Peter Maydell wrote:
 Here's my stab at it:
            Maintained:  Someone actually looks after it. The maintainer
                         will have a git subtree for this area and patches
                         are expected to go through it. Bug reports will
                         generally be investigated.

 * For something to be marked Maintained, there must be a person on M: and
 there must be a git tree for the subsystem.

Do you mean there must be a git tree or there must be a git tree
listed under T: for this area ? We have I think several subsystems
where things do come in via pullreq for a submaintainer tree but that
tree isn't officially public except in as much as the branch name
for the pullreq is always the same...

I don't particularly object to providing a T: line for
target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
since we don't have the same tendency the kernel does to having subtrees
which can diverge significantly because of large amounts of change waiting
for a merge window. I wouldn't expect people to base arm patches against
arm-devs.next rather than master, for instance. (Maybe I should??)
Anyway, I think if we have T: lines in MAINTAINERS it should be because
(and we should clearly say that) that is the tree that we expect patches
in that area to apply to.

-- PMM



Re: [Qemu-devel] [RFC 00/14] MAINTAINERS cleanups - please read

2012-04-16 Thread Anthony Liguori

On 04/16/2012 04:24 PM, Peter Maydell wrote:

On 16 April 2012 18:42, Anthony Liguorianth...@codemonkey.ws  wrote:

On 04/16/2012 12:17 PM, Peter Maydell wrote:

Here's my stab at it:
Maintained:  Someone actually looks after it. The maintainer
 will have a git subtree for this area and patches
 are expected to go through it. Bug reports will
 generally be investigated.


* For something to be marked Maintained, there must be a person on M: and
there must be a git tree for the subsystem.


Do you mean there must be a git tree or there must be a git tree
listed under T: for this area ? We have I think several subsystems
where things do come in via pullreq for a submaintainer tree but that
tree isn't officially public except in as much as the branch name
for the pullreq is always the same...


I'd like to record T: as part of a way to validate pull requests.  I get 
slightly nervous about pull requests because it's an easy way to sneak code into 
the tree if you're malicious.


I'd prefer if we kept an official whitelist of trees in MAINTAINERS verses 
relying on my local .git/config.




I don't particularly object to providing a T: line for
target-arm.next/arm-devs.next, but I'm not sure it's particularly useful,
since we don't have the same tendency the kernel does to having subtrees
which can diverge significantly because of large amounts of change waiting
for a merge window. I wouldn't expect people to base arm patches against
arm-devs.next rather than master, for instance. (Maybe I should??)
Anyway, I think if we have T: lines in MAINTAINERS it should be because
(and we should clearly say that) that is the tree that we expect patches
in that area to apply to.


I think we should (and do already?) say that all patches on qemu-devel should be 
against qemu.git unless otherwise indicated in the patch subject.


Regards,

Anthony Liguori



-- PMM