public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Willy Tarreau <w@1wt.eu>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	David Miller <davem@davemloft.net>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Jiri Slaby <jirislaby@gmail.com>
Subject: Re: Slow DOWN, please!!!
Date: Thu, 1 May 2008 15:16:42 +0200	[thread overview]
Message-ID: <200805011516.43159.bzolnier@gmail.com> (raw)
In-Reply-To: <200805011353.19335.rjw@sisk.pl>

On Thursday 01 May 2008, Rafael J. Wysocki wrote:
> On Thursday, 1 of May 2008, Willy Tarreau wrote:
> > On Wed, Apr 30, 2008 at 06:19:56PM -0700, Linus Torvalds wrote:
> > > 
> > > 
> > > On Thu, 1 May 2008, Rafael J. Wysocki wrote:
> > > > 
> > > > > I do _not_ want to slow down development by setting some kind of "quality 
> > > > > bar" - but I do believe that we should keep our quality high, not because 
> > > > > of any hoops we need to jump through, but because we take pride in the 
> > > > > thing we do.
> > > > 
> > > > Well, we certainly should, but do we always remeber about it?  Honest, guv?
> > > 
> > > Hey, guv, do you _honestly_ believe that some kind of ISO-9000-like 
> > > process generates quality?
> > > 
> > > And I dislike how people try to conflate "quality" and "merging speed" as 
> > > if there was any reason what-so-ever to believe that they are related.
> > > 
> > > You (and Andrew) have tried to argue that slowing things down results in 
> > > better quality, and I simply don't for a moment believe that. I believe 
> > > the exact opposite.
> > 
> > Note that I'm not necessarily arguing for slowing down, but for reduced
> > functional conflicts (which slow down may help but it's not the only
> > solution). I think that refining the time resolution might achieve the
> > same goal. Instead of merging 10000 changes which each have 1% chance
> > of breaking any other area, and have all developers try to hunt bugs
> > caused by unrelated changes, I think we could do that in steps.
> > 
> > To illustrate, instead of changing 100 areas with one of them causing
> > breaking in the other ones, and having 100 victims try to hunt the
> > bug in 99 other areas, then theirs, and finally insult the faulty
> > author, we could merge 50 areas in version X and 50 in X+1 (or 3*33
> > or 4*25, etc...). That way, we would only have 50 victims trying to
> > find the bug in 49 other areas (or 32 or 24). Less people wasting
> > their time will mean faster validation of changes, and possibly
> > faster release cycle with better quality.
> > 
> > People send you their crap every two months. If you accept half of
> > it every month, they don't have to sleep on their code, and at the
> > same time at most half of them are in trouble during half the time
> > (since bugs are found faster).
> 
> Well, as far as I'm concerned, that will work too.
> 
> > > So if we can get the discussion *away* from the "let's slow things down", 
> > > then I'm interested. Because at that point we don't have to fight made-up 
> > > arguments about something irrelevant.
> > 
> > well, is "let's split changes" ok ?
> 
> How about:
> 
> (1) Merge a couple of trees at a time (one tree at a time would be ideal, but
>     that's impossible due to the total number of trees).
> (2) After (1) give testers some time to report problems introduced by the
>     merge.
> (3) Wait until the most urgent problems are resolved.  Revert the offending
>     changes if there's no solution within given time.
> (4) Repeat for another couple of trees.
> (5) Arrange things so that every tree gets merged once every two months.
> 
> This would also give us an idea of which trees introduce more problems.

...and what would you do with such information?

I'm not actually worried about my tree but if (theoretically) it happens to
be amongst the "problematic" ones I would be a bit pissed by blame shifting,
especially given that it is very difficult to compare different trees as
they (usually) deal with quite different areas of the code (some are messy
and problematic, yet critical while others can be more forgiving).

Also slowing down things to focus on quality is really a bad idea.  You can
trust me on this one, I've tried it once on the smaller scale and it was a
big disaster cause people won't focus on quality just because you want them
to.  They'll continue to operate in the usual way and try to workaround you
instead (which in turn causes extra tensions which may become quiet warfare).
In the end you will have a lot more problems to deal with...

Same goes for any other kind of improvement by incorporating "punishment" as
the part of the process.  You are much better helping people and trying them
to understand that they should apply some changes to their way of work because
it would be also beneficial for _them_, not only for _you_.

Now regarding the development model - I think that there is really no need
for a revolution yet, instead we should focus on refining the current process
(which works great IMO), just to summarize various ideas given by people:

- try to persuade few black sheeps that skipping linux-next completely for
  whole patch series is a really bad idea and that they should try to spend
  a bit more time on planning for merge instead of LastMinute assembly+push
  (by doing it right they could spend more time after merge to prepare for
  the next one or fixing old bugs instead of chasing new regressions, overall
  they should have _more_ time for development by doing it right)

- encourage flatting of merges during the merge window so instead of 1-2 big
  merges per tree at the beginning of the merge you have few smaller ones
  (majority of maintainers do it this way already)

- more testing for linux-next, distros may be of a great help here (-mm and
  -next often catches bugs that you wouldn't have ever imagined in the first
  place and they get fixed before the problem propagates into Linus' tree)

- more documentation for lowering the entry barrier for people who would like
  to review the code (what Al has mentioned in this thread is a great idea
  so no need for me to repeat it here)

- more co-operation between people from different areas of the code
  (i.e. testing linux-next instead of your own tree)

and just not to forget - changes happen by people actually putting the work
into them not by endless discussions.

Thanks,
Bart

  parent reply	other threads:[~2008-05-01 13:05 UTC|newest]

Thread overview: 229+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-30  2:03 Slow DOWN, please!!! David Miller
2008-04-30  4:03 ` David Newall
2008-04-30  4:18   ` David Miller
2008-04-30 13:04     ` David Newall
2008-04-30 13:18       ` Michael Kerrisk
2008-04-30 14:51       ` Linus Torvalds
2008-04-30 18:21         ` David Newall
2008-04-30 18:27           ` Linus Torvalds
2008-04-30 18:55             ` David Newall
2008-04-30 19:08               ` Linus Torvalds
2008-04-30 19:16                 ` David Newall
2008-04-30 19:25                   ` Linus Torvalds
2008-05-01  4:31                     ` David Newall
2008-05-01  4:37                       ` David Miller
2008-05-01 13:49                       ` Lennart Sorensen
2008-05-01 15:28                       ` Kasper Sandberg
2008-05-01 17:49                         ` Russ Dill
2008-05-02  1:47                           ` Kasper Sandberg
2008-05-02  2:54                             ` Russ Dill
2008-05-02  7:01                               ` Kasper Sandberg
2008-05-02 17:34                               ` Lee Mathers (TCAFS)
2008-05-02 18:21                                 ` Andi Kleen
2008-05-02 21:34                                   ` Kasper Sandberg
2008-04-30 19:06             ` Chris Friesen
2008-04-30 19:13               ` Linus Torvalds
2008-04-30 19:22                 ` David Newall
2008-04-30 19:42                   ` Linus Torvalds
2008-04-30  7:11   ` Tarkan Erimer
2008-04-30 13:28     ` David Newall
2008-04-30 13:38       ` Mike Galbraith
2008-04-30 14:41       ` mws
2008-04-30 14:55   ` Russ Dill
2008-04-30 14:48 ` Peter Teoh
2008-04-30 19:36 ` Rafael J. Wysocki
2008-04-30 20:00   ` Andrew Morton
2008-04-30 20:20     ` Rafael J. Wysocki
2008-04-30 20:05   ` Linus Torvalds
2008-04-30 20:14     ` Linus Torvalds
2008-04-30 20:56       ` Rafael J. Wysocki
2008-04-30 23:34       ` Greg KH
2008-04-30 20:45     ` Rafael J. Wysocki
2008-04-30 21:37       ` Linus Torvalds
2008-04-30 22:23         ` Rafael J. Wysocki
2008-04-30 22:31           ` Linus Torvalds
2008-04-30 22:41             ` Andrew Morton
2008-04-30 23:23               ` Rafael J. Wysocki
2008-04-30 23:41                 ` david
2008-04-30 23:51                   ` Rafael J. Wysocki
2008-05-01  0:57               ` Adrian Bunk
2008-05-01  1:25                 ` Linus Torvalds
2008-05-01  2:13                   ` Adrian Bunk
2008-05-01  2:30                     ` Linus Torvalds
2008-05-01 18:54                       ` Adrian Bunk
2008-05-14 14:55                       ` Pavel Machek
2008-05-01  1:35                 ` Theodore Tso
2008-05-01 12:31               ` Tarkan Erimer
2008-05-01 15:34                 ` Stefan Richter
2008-05-02 14:05                   ` Tarkan Erimer
2008-04-30 22:46             ` Willy Tarreau
2008-04-30 22:52               ` Andrew Morton
2008-04-30 23:21                 ` Willy Tarreau
2008-04-30 23:38                   ` Chris Shoemaker
2008-04-30 23:20               ` Linus Torvalds
2008-05-01  0:42                 ` Rafael J. Wysocki
2008-05-01  1:19                   ` Linus Torvalds
2008-05-01  1:31                     ` Andrew Morton
2008-05-01  1:43                       ` Linus Torvalds
2008-05-01 10:59                         ` Rafael J. Wysocki
2008-05-01 15:26                           ` Linus Torvalds
2008-05-01 17:09                             ` Rafael J. Wysocki
2008-05-01 17:41                               ` Linus Torvalds
2008-05-01 18:11                                 ` Al Viro
2008-05-01 18:23                                   ` Linus Torvalds
2008-05-01 18:30                                     ` Linus Torvalds
2008-05-01 18:58                                     ` Willy Tarreau
2008-05-01 19:37                                     ` Al Viro
2008-05-01 19:58                                       ` Andrew Morton
2008-05-01 20:07                                       ` Joel Becker
2008-05-01 18:50                                 ` Willy Tarreau
2008-05-01 19:07                                   ` david
2008-05-01 19:28                                     ` Willy Tarreau
2008-05-01 19:46                                       ` david
2008-05-01 19:53                                         ` Willy Tarreau
2008-05-01 22:17                                   ` Rafael J. Wysocki
2008-05-01 19:39                                 ` Friedrich Göpel
2008-05-01 21:59                                 ` Rafael J. Wysocki
2008-05-02 12:17                                   ` Stefan Richter
2008-05-01 18:35                             ` Chris Frey
2008-05-02 13:22                               ` Enrico Weigelt
2008-05-01  1:40                     ` Linus Torvalds
2008-05-01  1:51                       ` David Miller
2008-05-01  2:01                         ` Linus Torvalds
2008-05-01  2:17                           ` David Miller
2008-05-01  2:21                       ` Al Viro
2008-05-01  5:19                         ` david
2008-05-04  3:26                         ` Rene Herman
2008-05-01  2:31                       ` Nigel Cunningham
2008-05-01 18:32                         ` Stephen Clark
2008-05-01  3:53                       ` Frans Pop
2008-05-01 11:38                       ` Rafael J. Wysocki
2008-04-30 14:28                         ` Arjan van de Ven
2008-05-01 12:41                           ` Rafael J. Wysocki
2008-04-30 15:06                             ` Arjan van de Ven
2008-05-01  5:50                     ` Willy Tarreau
2008-05-01 11:53                       ` Rafael J. Wysocki
2008-05-01 12:11                         ` Will Newton
2008-05-01 13:16                         ` Bartlomiej Zolnierkiewicz [this message]
2008-05-01 13:53                           ` Rafael J. Wysocki
2008-05-01 14:35                             ` Bartlomiej Zolnierkiewicz
2008-05-01 15:29                           ` Ray Lee
2008-05-01 19:03                             ` Willy Tarreau
2008-05-01 19:36                         ` Valdis.Kletnieks
2008-05-01  1:30                 ` Jeremy Fitzhardinge
2008-05-01  5:35                   ` Willy Tarreau
2008-04-30 23:03             ` Rafael J. Wysocki
2008-04-30 22:40           ` david
2008-04-30 23:45             ` Rafael J. Wysocki
2008-04-30 23:57               ` david
2008-05-01  0:01                 ` Chris Shoemaker
2008-05-01  0:14                   ` david
2008-05-01  0:38                     ` Linus Torvalds
2008-05-01  1:39                       ` Jeremy Fitzhardinge
2008-05-01  0:38               ` Adrian Bunk
2008-05-01  0:56                 ` Rafael J. Wysocki
2008-05-01  1:25                   ` Adrian Bunk
2008-05-01 12:05                     ` Rafael J. Wysocki
2008-05-01 13:54       ` Stefan Richter
2008-05-01 14:06         ` Rafael J. Wysocki
2008-04-30 23:29     ` Paul Mackerras
2008-05-01  1:57       ` Jeff Garzik
2008-05-01  2:52         ` Frans Pop
2008-05-01  3:47       ` Linus Torvalds
2008-05-01  4:17         ` Jeff Garzik
2008-05-01  4:46           ` Linus Torvalds
2008-05-04 13:47             ` Krzysztof Halasa
2008-05-04 15:05               ` Jacek Luczak
2008-05-01  9:17           ` Alan Cox
2008-04-30 20:15   ` Andrew Morton
2008-04-30 20:31     ` Linus Torvalds
2008-04-30 20:47       ` Dan Noe
2008-04-30 20:59         ` Andrew Morton
2008-04-30 21:30           ` Rafael J. Wysocki
2008-04-30 21:37             ` Andrew Morton
2008-04-30 22:08             ` Linus Torvalds
2008-04-30 22:53           ` Mariusz Kozlowski
2008-04-30 23:11             ` Andrew Morton
2008-05-12  9:27               ` Ben Dooks
2008-05-02 10:20             ` Andi Kleen
2008-05-02 15:33               ` Mariusz Kozlowski
2008-04-30 20:54       ` Andrew Morton
2008-04-30 21:21         ` David Miller
2008-04-30 21:47           ` Rafael J. Wysocki
2008-04-30 22:02           ` Dmitri Vorobiev
2008-04-30 22:19           ` Ingo Molnar
2008-04-30 22:22             ` David Miller
2008-04-30 22:39               ` Rafael J. Wysocki
2008-04-30 22:54                 ` david
2008-04-30 23:12                 ` Willy Tarreau
2008-04-30 23:59                   ` Rafael J. Wysocki
2008-05-01  0:15                   ` Chris Shoemaker
2008-05-01  5:09                     ` Willy Tarreau
2008-04-30 22:35             ` Ingo Molnar
2008-04-30 22:49               ` Andrew Morton
2008-04-30 22:51               ` David Miller
2008-05-01  1:40                 ` Ingo Molnar
2008-05-01  2:48                 ` Adrian Bunk
2008-05-05  3:04             ` Rusty Russell
2008-05-02 13:37           ` Helge Hafting
2008-04-30 21:42         ` Dmitri Vorobiev
2008-04-30 22:06           ` Jiri Slaby
2008-04-30 22:10           ` Andrew Morton
2008-04-30 22:19             ` Linus Torvalds
2008-04-30 22:28               ` Dmitri Vorobiev
2008-05-01 16:26                 ` Diego Calleja
2008-05-01 16:31                   ` Dmitri Vorobiev
2008-05-02  1:48                   ` Stephen Rothwell
2008-05-01 23:06               ` Kevin Winchester
2008-04-30 23:04             ` Dmitri Vorobiev
2008-05-01 15:19               ` Jim Schutt
2008-05-01  6:15             ` Jan Engelhardt
2008-05-09  9:28         ` Jiri Kosina
2008-05-09 15:00           ` Jeff Garzik
2008-04-30 21:52       ` H. Peter Anvin
2008-05-01  3:24         ` Bob Tracy
2008-05-01 16:39         ` Valdis.Kletnieks
2008-05-01  0:31       ` RFC: starting a kernel-testers group for newbies Adrian Bunk
2008-04-30  7:03         ` Arjan van de Ven
2008-05-01  8:13           ` Andrew Morton
2008-04-30 14:15             ` Arjan van de Ven
2008-05-01 12:42               ` David Woodhouse
2008-04-30 15:02                 ` Arjan van de Ven
2008-05-05 10:03                 ` Benny Halevy
2008-05-04 12:45               ` Rene Herman
2008-05-04 13:00                 ` Pekka Enberg
2008-05-04 13:19                   ` Rene Herman
2008-05-05 13:13                   ` crosscompiler [WAS: RFC: starting a kernel-testers group for newbies] Enrico Weigelt
2008-05-01  9:16             ` RFC: starting a kernel-testers group for newbies Frans Pop
2008-05-01 10:30               ` Enrico Weigelt
2008-05-01 13:02                 ` Adrian Bunk
2008-05-01 11:30           ` Adrian Bunk
2008-04-30 14:20             ` Arjan van de Ven
2008-05-01 12:53               ` Rafael J. Wysocki
2008-05-01 13:21               ` Adrian Bunk
2008-05-01 15:49                 ` Andrew Morton
2008-05-01  1:13                   ` Arjan van de Ven
2008-05-02  9:00                     ` Adrian Bunk
2008-05-01 16:38                   ` Steven Rostedt
2008-05-01 17:18                     ` Andrew Morton
2008-05-01 17:24                   ` Theodore Tso
2008-05-01 19:26                     ` Andrew Morton
2008-05-01 19:39                       ` Steven Rostedt
2008-05-02 10:23                       ` Andi Kleen
2008-05-02  2:08                 ` Paul Mackerras
2008-05-02  3:10                   ` Josh Boyer
2008-05-02  4:09                     ` Paul Mackerras
2008-05-02  8:29                       ` Adrian Bunk
2008-05-02 10:16                         ` Paul Mackerras
2008-05-02 11:58                           ` Adrian Bunk
2008-05-02 14:58                         ` Linus Torvalds
2008-05-02 15:44                           ` Carlos R. Mafra
2008-05-02 16:28                             ` Linus Torvalds
2008-05-02 17:15                               ` Carlos R. Mafra
2008-05-02 18:02                                 ` Pallipadi, Venkatesh
2008-05-09 16:32                                   ` Mark Lord
2008-05-09 19:30                                     ` Carlos R. Mafra
2008-05-09 20:39                                       ` Mark Lord
2008-05-01  0:41         ` David Miller
2008-05-01 13:23           ` Adrian Bunk
  -- strict thread matches above, loose matches on Subject: below --
2008-04-30 20:59 Slow DOWN, please!!! devzero

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=200805011516.43159.bzolnier@gmail.com \
    --to=bzolnier@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=jirislaby@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rjw@sisk.pl \
    --cc=torvalds@linux-foundation.org \
    --cc=w@1wt.eu \
    /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