From: Andrew Morton <akpm@linux-foundation.org>
To: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Cc: Adrian Bunk <bunk@stusta.de>,
Michal Piotrowski <michal.k.k.piotrowski@gmail.com>,
Stefan Richter <stefanr@s5r6.in-berlin.de>,
Oleg Verych <olecom@flower.upol.cz>,
Linus Torvalds <torvalds@linux-foundation.org>,
Andi Kleen <andi@firstfloor.org>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Diego Calleja <diegocg@gmail.com>,
Chuck Ebbert <cebbert@redhat.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: How to improve the quality of the kernel?
Date: Sun, 17 Jun 2007 11:52:58 -0700 [thread overview]
Message-ID: <20070617115258.1f55b29d.akpm@linux-foundation.org> (raw)
In-Reply-To: <200706172053.41806.bzolnier@gmail.com>
On Sun, 17 Jun 2007 20:53:41 +0200 Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> wrote:
>
>
> IMO we should concentrate more on preventing regressions than on fixing them.
> In the long-term preventing bugs is cheaper than fixing them afterwards.
>
> First let me tell you all a little story...
>
> Over two years ago I've reviewed some _cleanup_ patch and noticed three bugs
> in it (in other words I potentially prevented three regressions). I also
> asked for more thorough verification of the patch as I suspected that it may
> have more problems. The author fixed the issues and replied that he hasn't
> done the full verification yet but he doesn't suspect any problems...
>
> Fast forward...
>
> Year later I discover that the final version of the patch hit the mainline.
> I don't remember ever seeing the final version in my mailbox (there are no
> cc: lines in the patch description) and I saw that I'm not credited in the
> patch description. However the worse part is that it seems that the full
> verification has never been done. The result? Regression in the release
> kernel (exactly the issue that I was worried about) which required three
> patches and over a month to be fixed completely. It seems that a year
> was not enough to get this ~70k _cleanup_ patch fully verified and tested
> (it hit -mm soon before being merged)...
crap. Commit ID, please ;)
> >From reviewer's POV: I have invested my time into review, discovered real
> issues and as a reward I got no credit et all and extra frustration from the
> fact that part of my review was forgotten/ignored (the part which resulted in
> real regression in the release kernel)... Oh and in the past the said
> developer has already been asked (politely in private message) to pay more
> attention to his changes (after I silently fixed some other regression caused
> by his other patch).
>
> But wait there is more, I happend to be the maintainer of the subsystem which
> got directly hit by the issue and I was getting bugreports from the users about
> the problem... :-)
>
> It wasn't my first/last bad experience as a reviewer... finally I just gave up
> on reviewing other people patches unless they are stricly for IDE subsystem.
>
> The moral of the story is that currently it just doesn't pay off to do
> code reviews.
I dunno. I suspect (hope) that this was an exceptional case, hence one
should not draw general conclusions from it. It certainly sounds very bad.
> From personal POV it pays much more to wait until buggy patch
> hits the mainline and then fix the issues yourself (at least you will get
> some credit). To change this we should put more ephasize on the importance
> of code reviews by "rewarding" people investing their time into reviews
> and "rewarding" developers/maintainers taking reviews seriously.
>
> We should credit reviewers more, sometimes it takes more time/knowledge to
> review the patch than to make it so getting near to zero credit for review
> doesn't sound too attractive. Hmm, wait it can be worse - your review
> may be ignored... ;-)
>
> >From my side I think I'll start adding less formal "Reviewed-by" to IDE
> patches even if the review resulted in no issues being found (in additon to
> explicit "Acked-by" tags and crediting people for finding real issues - which
> I currently always do as a way for showing my appreciation for their work).
yup, Reviewed-by: is good and I do think we should start adopting it,
although I haven't thought through exactly how.
On my darker days I consider treating a Reviewed-by: as a prerequisite for
merging. I suspect that would really get the feathers flying.
> I also encourage other maintainers/developers to pay more attention to
> adding "Acked-by"/"Reviewed-by" tags and crediting reviewers. I hope
> that maintainers will promote changes that have been reviewed by others
> by giving them priority over other ones (if the changes are on more-or-less
> the same importance level of course, you get the idea).
>
> Now what to do with people who ignore reviews and/or have rather high
> regressions/patches ratio?
Ignoring a review would be a wildly wrong thing to do. It's so unusual
that I'd be suspecting a lost email or an i-sent-the-wrong-patch.
As for high regressions/patches ratio: that'll be hard to calculate and
tends to be dependent upon the code which is being altered rather than who
is doing the altering: some stuff is just fragile, for various reasons.
One ratio which we might want to have a think about is the patches-sent
versus reviews-done ratio ;)
> I think that we should have info about regressions integrated into SCM,
> i.e. in git we should have optional "fixes-commit" tag and we should be
> able to do some reverse data colletion. This feature combined with
> "Author:" info after some time should give us some very interesting
> statistics (Top Ten "Regressors"). It wouldn't be ideal (ie. we need some
> patches threshold to filter out people with 1 patch and >= 1 regression(s),
> we need to remember that some code areas are more difficult than the others
> and that patches are not equal per se etc.) however I believe than making it
> into Top Ten "Regressors" should give the winners some motivation to improve
> their work ethic. Well, in the worst case we would just get some extra
> trivial/documentation patches. ;-)
We of course do want to minimise the amount of overhead for each developer.
I'm a strong believer in specialisation: rather than requiring that *every*
developer/maintainer integrate new steps in their processes it would be
better to allow them to proceed in a close-to-usual fashion and to provide
for a specialist person (or team) to do the sorts of things which you're
thinking about.
next prev parent reply other threads:[~2007-06-17 18:54 UTC|newest]
Thread overview: 289+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-26 3:29 Linux 2.6.21 Linus Torvalds
2007-04-26 4:08 ` Adrian Bunk
2007-04-26 4:38 ` Dave Jones
2007-04-26 5:02 ` Greg KH
2007-04-26 5:44 ` Nick Piggin
2007-04-26 5:04 ` Willy Tarreau
2007-04-26 6:28 ` Jeff Chua
2007-04-26 6:46 ` Daniel Barkalow
2007-04-26 8:03 ` Oliver Neukum
2007-04-26 12:32 ` Adrian Bunk
2007-04-26 8:42 ` Soeren Sonnenburg
2007-04-26 9:20 ` Jens Axboe
2007-04-26 10:44 ` Jesper Juhl
2007-04-26 12:58 ` Adrian Bunk
2007-04-26 15:47 ` Linus Torvalds
2007-04-26 16:59 ` Adrian Bunk
2007-04-26 17:20 ` Linus Torvalds
2007-04-26 17:48 ` Adrian Bunk
2007-04-26 18:37 ` Krzysztof Halasa
2007-04-26 18:45 ` Adrian Bunk
2007-04-26 19:55 ` Krzysztof Halasa
2007-04-26 21:34 ` Mel Gorman
2007-04-26 19:11 ` Stephen Clark
2007-04-27 17:14 ` Michael Tokarev
2007-04-27 19:35 ` Stefan Richter
2007-04-28 20:44 ` Krzysztof Halasa
2007-04-26 20:50 ` Alan Cox
2007-04-27 14:58 ` Adrian Bunk
2007-04-27 16:31 ` Theodore Tso
2007-04-27 19:46 ` Adrian Bunk
2007-04-27 20:23 ` Stephen Clark
2007-04-28 12:51 ` Markus Rechberger
2007-04-27 21:17 ` Bill Davidsen
2007-04-26 17:02 ` Chuck Ebbert
2007-04-26 18:13 ` Diego Calleja
2007-04-26 18:42 ` Linus Torvalds
2007-04-26 20:41 ` Diego Calleja
2007-04-26 21:13 ` Linus Torvalds
2007-04-27 9:33 ` Marek Wawrzyczny
2007-04-28 19:08 ` Martin J. Bligh
2007-04-28 22:11 ` Neil Brown
2007-04-28 22:33 ` Adrian Bunk
2007-04-28 22:42 ` Neil Brown
2007-04-28 23:14 ` Rafael J. Wysocki
2007-04-29 0:17 ` Linus Torvalds
2007-04-29 3:03 ` Andrew Morton
2007-04-29 0:07 ` Linus Torvalds
2007-04-29 3:28 ` Andrew Morton
2007-04-28 19:53 ` Adrian Bunk
[not found] ` <alpine.LFD.0.98.0704281529080. 9964@woody.linux-foundation.org>
2007-04-28 20:27 ` Russell King
2007-04-28 21:43 ` irks with bugzilla (was Re: Linux 2.6.21) Stefan Richter
2007-04-28 22:49 ` Linux 2.6.21 Adrian Bunk
2007-04-28 23:29 ` Linus Torvalds
2007-04-29 13:15 ` Andi Kleen
2007-04-29 16:07 ` Linus Torvalds
2007-04-29 16:34 ` Stefan Richter
2007-04-29 16:49 ` Rafael J. Wysocki
2007-04-29 17:37 ` Andi Kleen
2007-04-29 17:50 ` Linus Torvalds
2007-06-14 6:29 ` regression tracking (Re: Linux 2.6.21) Oleg Verych
2007-06-14 15:33 ` Stefan Richter
2007-06-14 16:39 ` Oleg Verych
2007-06-14 16:36 ` Stefan Richter
2007-06-14 17:30 ` Adrian Bunk
2007-06-14 20:33 ` Oleg Verych
2007-06-14 20:46 ` Adrian Bunk
2007-06-15 23:20 ` Linus Torvalds
2007-06-15 23:42 ` Adrian Bunk
2007-06-16 1:32 ` Oleg Verych
2007-06-16 2:55 ` Adrian Bunk
2007-06-16 5:03 ` Oleg Verych
2007-06-16 13:25 ` Adrian Bunk
2007-06-16 12:23 ` Stefan Richter
2007-06-16 12:54 ` Michal Piotrowski
2007-06-17 0:44 ` Adrian Bunk
2007-06-17 9:41 ` [PATCH] (Re: regression tracking (Re: Linux 2.6.21)) Michal Piotrowski
2007-06-17 9:55 ` Andrew Morton
2007-06-17 10:22 ` Michal Piotrowski
2007-06-17 11:47 ` Oleg Verych
2007-06-17 12:13 ` Rafael J. Wysocki
2007-06-17 14:24 ` Oleg Verych
2007-06-17 14:48 ` Adrian Bunk
2007-06-17 17:44 ` david
2007-06-17 21:23 ` Oleg Verych
2007-06-17 12:01 ` Rafael J. Wysocki
2007-06-17 12:45 ` Adrian Bunk
2007-06-17 13:17 ` Michal Piotrowski
2007-06-17 14:02 ` Stefan Richter
2007-06-17 14:29 ` How to improve the quality of the kernel? Adrian Bunk
2007-06-17 16:15 ` Michal Piotrowski
2007-06-17 16:26 ` Stefan Richter
2007-06-17 16:47 ` Michal Piotrowski
2007-06-17 18:24 ` Adrian Bunk
2007-06-17 18:44 ` Stefan Richter
2007-06-17 18:50 ` Natalie Protasevich
2007-06-22 12:01 ` Markus Rechberger
2007-06-22 14:19 ` Stefan Richter
2007-06-22 15:25 ` Oleg Verych
2007-06-17 17:31 ` Rafael J. Wysocki
2007-06-17 17:42 ` Natalie Protasevich
2007-06-17 18:16 ` Rafael J. Wysocki
2007-06-17 19:31 ` Adrian Bunk
2007-06-17 18:53 ` Bartlomiej Zolnierkiewicz
2007-06-17 18:52 ` Andrew Morton [this message]
2007-06-17 19:18 ` Rafael J. Wysocki
2007-06-17 19:33 ` Carlo Wood
2007-06-17 20:00 ` Stefan Richter
2007-06-17 20:10 ` Michal Piotrowski
2007-06-17 21:49 ` Bartlomiej Zolnierkiewicz
2007-06-17 23:15 ` Stefan Richter
2007-06-18 0:22 ` Bartlomiej Zolnierkiewicz
2007-06-18 0:32 ` Stefan Richter
2007-06-18 5:09 ` Andrew Morton
2007-06-18 13:23 ` Fortier,Vincent [Montreal]
2007-06-18 22:31 ` Natalie Protasevich
2007-06-18 22:41 ` Martin Bligh
2007-06-18 22:56 ` Natalie Protasevich
2007-06-18 23:59 ` Martin Bligh
2007-06-19 0:09 ` Linus Torvalds
2007-06-19 0:24 ` Natalie Protasevich
2007-06-19 0:42 ` Martin Bligh
2007-06-19 0:55 ` Natalie Protasevich
2007-06-19 1:10 ` Martin Bligh
2007-06-19 4:06 ` This is [Re:] How to improve the quality of the kernel[?] Oleg Verych
2007-06-19 12:48 ` Adrian Bunk
2007-06-19 14:05 ` Oleg Verych
2007-06-19 14:27 ` Stefan Richter
2007-06-19 15:47 ` Oleg Verych
2007-06-19 17:50 ` Stefan Richter
2007-06-19 18:56 ` Oleg Verych
2007-06-19 19:21 ` Stefan Richter
2007-06-19 15:04 ` Adrian Bunk
2007-06-19 15:08 ` Stefan Richter
2007-06-19 17:14 ` Oleg Verych
2007-06-19 15:01 ` Linus Torvalds
2007-06-19 16:53 ` Oleg Verych
2007-06-19 17:04 ` Linus Torvalds
2007-06-19 17:37 ` Natalie Protasevich
2007-06-19 17:51 ` Oleg Verych
2007-06-21 23:51 ` Adrian Bunk
2007-06-21 23:59 ` Linus Torvalds
2007-06-22 0:16 ` Adrian Bunk
2007-06-21 23:48 ` Adrian Bunk
2007-06-19 13:30 ` Don Armstrong
2007-06-19 1:51 ` How to improve the quality of the kernel? Fortier,Vincent [Montreal]
2007-06-19 2:27 ` Natalie Protasevich
2007-06-19 11:06 ` Stefan Richter
2007-06-17 23:15 ` Rafael J. Wysocki
2007-06-18 1:04 ` Bartlomiej Zolnierkiewicz
2007-06-17 18:54 ` Michal Piotrowski
2007-06-19 0:28 ` regression tracking (Re: Linux 2.6.21) Martin Bligh
2007-06-19 14:49 ` Rafael J. Wysocki
2007-06-19 17:27 ` Martin J. Bligh
2007-04-29 18:50 ` Linux 2.6.21 Rafael J. Wysocki
2007-04-29 18:58 ` Linus Torvalds
2007-04-29 19:14 ` Andi Kleen
2007-04-29 20:18 ` Rafael J. Wysocki
2007-04-29 20:43 ` Adrian Bunk
2007-04-29 22:00 ` Rafael J. Wysocki
2007-04-29 22:00 ` Adrian Bunk
2007-04-29 23:14 ` Rafael J. Wysocki
2007-04-29 20:52 ` Alexey Dobriyan
2007-04-29 22:09 ` Rafael J. Wysocki
2007-04-30 6:30 ` Andrew Morton
2007-04-30 23:08 ` Rafael J. Wysocki
2007-05-04 18:18 ` Bugzilla (was Linux 2.6.21) Martin J. Bligh
2007-04-30 5:43 ` Linux 2.6.21 Willy Tarreau
2007-04-29 17:35 ` Andi Kleen
2007-04-29 17:47 ` Linus Torvalds
2007-04-29 18:09 ` Andi Kleen
2007-04-29 18:47 ` Linus Torvalds
2007-04-29 18:59 ` Rafael J. Wysocki
2007-04-29 19:31 ` Russell King
2007-04-29 19:40 ` Diego Calleja
2007-04-29 19:51 ` Michal Piotrowski
2007-04-30 1:50 ` Gene Heskett
2007-04-30 4:54 ` Bernd Eckenfels
2007-04-30 5:06 ` Gene Heskett
2007-04-29 20:17 ` Adrian Bunk
2007-04-29 20:33 ` Linus Torvalds
2007-04-29 21:05 ` Adrian Bunk
2007-04-29 21:24 ` Linus Torvalds
2007-04-30 7:45 ` Anton Altaparmakov
2007-04-30 18:09 ` Adrian Bunk
2007-04-30 18:20 ` Linus Torvalds
2007-04-30 18:27 ` Linus Torvalds
2007-04-30 18:57 ` Adrian Bunk
2007-04-30 19:25 ` Vegard Nossum
2007-04-29 22:36 ` Johannes Stezenbach
2007-04-29 23:18 ` Indan Zupancic
2007-04-29 23:41 ` Johannes Stezenbach
2007-04-30 0:05 ` Indan Zupancic
2007-04-30 7:54 ` Matthias Andree
2007-04-29 20:56 ` Diego Calleja
2007-04-29 21:10 ` Adrian Bunk
2007-04-29 21:16 ` Michal Piotrowski
2007-04-29 21:21 ` Adrian Bunk
2007-04-29 21:26 ` Michal Piotrowski
2007-04-29 21:52 ` Thomas Gleixner
2007-04-29 22:19 ` Adrian Bunk
2007-04-29 22:33 ` Thomas Gleixner
2007-04-29 22:37 ` Andi Kleen
2007-04-29 22:48 ` Michal Piotrowski
2007-04-29 23:09 ` Andi Kleen
2007-04-29 22:42 ` Adrian Bunk
2007-04-29 22:57 ` Michal Piotrowski
2007-04-29 21:51 ` Diego Calleja
2007-04-29 23:19 ` Rafael J. Wysocki
2007-04-29 21:29 ` Francois Romieu
2007-05-02 19:59 ` Lennart Sorensen
2007-04-29 20:01 ` David Miller
2007-04-29 21:26 ` Andi Kleen
2007-04-29 21:41 ` David Miller
2007-04-29 22:15 ` Andi Kleen
2007-04-29 20:38 ` Simon Arlott
2007-04-30 7:34 ` Matthias Andree
2007-04-29 23:55 ` Theodore Tso
2007-04-30 0:13 ` Dave Jones
2007-04-30 1:14 ` Björn Steinbrink
2007-04-30 1:31 ` Andi Kleen
2007-04-30 5:02 ` Kyle Moffett
2007-04-30 7:59 ` Johannes Stezenbach
2007-04-30 16:51 ` David Lang
2007-04-29 7:34 ` Russell King
2007-04-28 22:33 ` Linus Torvalds
2007-04-28 22:58 ` Markus Rechberger
2007-04-28 23:40 ` Linus Torvalds
2007-04-29 0:05 ` Adrian Bunk
2007-04-29 21:27 ` Dave Jones
2007-04-29 21:27 ` David Lang
2007-04-29 22:09 ` Adrian Bunk
2007-04-29 0:20 ` Bob Tracy
2007-04-29 0:40 ` Markus Rechberger
2007-04-29 0:28 ` Markus Rechberger
2007-04-29 3:40 ` David Miller
2007-04-29 6:43 ` David Lang
2007-04-29 9:34 ` Stefan Richter
2007-04-29 9:40 ` Stefan Richter
2007-04-29 6:01 ` Willy Tarreau
2007-04-29 9:53 ` Stefan Richter
2007-04-29 7:37 ` Russell King
2007-04-28 23:04 ` Adrian Bunk
2007-04-28 23:58 ` Linus Torvalds
2007-04-29 3:41 ` David Miller
2007-04-29 8:44 ` Thomas Gleixner
2007-04-30 18:13 ` Borislav Petkov
2007-04-26 17:39 ` Bill Davidsen
2007-04-26 17:44 ` Linus Torvalds
2007-04-27 21:14 ` Bill Davidsen
2007-04-26 23:32 ` Thomas Gleixner
2007-04-27 0:22 ` Linus Torvalds
2007-04-27 23:08 ` Daniel Barkalow
2007-04-26 17:23 ` Bill Davidsen
2007-04-26 18:04 ` Jeff Garzik
2007-04-26 18:36 ` Adrian Bunk
2007-04-26 18:58 ` Francois Romieu
2007-04-26 19:13 ` Jeff Garzik
2007-04-26 19:19 ` Adrian Bunk
2007-04-26 19:43 ` Stephen Clark
2007-04-26 19:43 ` Francois Romieu
2007-04-26 19:53 ` Stephen Clark
[not found] ` <4630FC6C.6070902@seclark.us>
[not found] ` <4630FE8D.6090900@garzik.org>
2007-04-26 19:48 ` Stephen Clark
2007-04-27 15:22 ` Stephen Clark
2007-04-26 19:13 ` Adrian Bunk
2007-04-26 19:14 ` Stephen Clark
2007-04-26 19:32 ` Jeff Garzik
2007-04-26 21:02 ` Gene Heskett
2007-04-26 21:02 ` Gene Heskett
2007-04-27 21:36 ` Bill Davidsen
2007-04-26 6:30 ` Jan De Luyck
2007-04-26 8:23 ` Marat Buharov
2007-04-27 6:30 ` Jan Engelhardt
2007-04-26 8:35 ` Jan Engelhardt
2007-04-26 16:40 ` Linus Torvalds
2007-04-26 19:02 ` Willy Tarreau
2007-04-27 4:08 ` Mike Galbraith
2007-04-26 19:57 ` Jan Engelhardt
2007-04-26 21:59 ` Mel Gorman
-- strict thread matches above, loose matches on Subject: below --
2007-06-17 22:41 How to improve the quality of the kernel? Al Boldi
2007-06-17 22:55 ` Michal Piotrowski
2007-06-18 3:55 ` Al Boldi
2007-06-20 21:34 ` Adrian Bunk
2007-06-21 3:26 ` Al Boldi
2007-06-21 13:07 ` Adrian Bunk
2007-06-21 13:41 ` Al Boldi
2007-06-21 13:57 ` Adrian Bunk
2007-06-21 21:33 ` Al Boldi
2007-06-22 11:24 ` Adrian Bunk
2007-06-21 15:48 ` Stefan Richter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070617115258.1f55b29d.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=bunk@stusta.de \
--cc=bzolnier@gmail.com \
--cc=cebbert@redhat.com \
--cc=diegocg@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=michal.k.k.piotrowski@gmail.com \
--cc=olecom@flower.upol.cz \
--cc=rjw@sisk.pl \
--cc=stefanr@s5r6.in-berlin.de \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox