mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Norbert Preining <preining@logic.at>,
	"Rafael J. Wysocki" <rjw@sisk.pl>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Jens Axboe <jens.axboe@oracle.com>,
	Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Subject: Re: 2.6.29-rc3-git6: Reported regressions from 2.6.28
Date: Wed, 4 Feb 2009 19:56:06 +0100	[thread overview]
Message-ID: <20090204185606.GA12991@elte.hu> (raw)
In-Reply-To: <alpine.LFD.2.00.0902041012440.3247@localhost.localdomain>


* Linus Torvalds <torvalds@linux-foundation.org> wrote:

> On Wed, 4 Feb 2009, Norbert Preining wrote:
> > 
> > The problem is that if you have a configuration under 2.6.28 without 
> > CONFIG_FB and just call make oldconfig, or even make config and don't 
> > know that you loose the DRM. And I was using make oldconfig (there is a 
> > graphical config?? ;-))
> 
> Sure. It's inconvenient, no question about that. I asked the i915 people 
> to look into not requiring CONFIG_FB, and I hope they will, but my point 
> is that I don't think we can consider "small one-time inconvenience" to be 
> a "regression".

if you mean that as a general principle, there's four very real downsides in 
my opinion.

Firstly, we could have done better (and still can do better), via various 
easy and non-intrusive measures:

   - We could add a runtime warning:

      for example a WARN_ONCE("please enable CONFIG_DRM_I915 and CONFIG_FB") 
      that there's no DRM because CONFIG_FB is not selected and oldconfig 
      loses the I915 setting silently - placed in a key DRM ioctl, would 
      have gone a long way addressing the issue. Testers do notice kernel 
      warnings that pop up when their X gets slow. (This approach might also 
      have the added bonus of warning folks who enable the wrong driver for 
      the hardware.)

   - Or we could add a more thoughtful Kconfig migration:

      Rename DRM_I915 to DRM_I915_FB [which it really is now], and keep
      DRM_I915 as a non-interactive migration helper: if set, it 
      auto-selects both FB and DRM_I915_FB.

      While CONFIG_FB is an interactive Kconfig option so a select can be 
      dangerous to a correct dependency tree, it seems safe to do in this 
      specific case because it seems to be a rather leaf entry with no 
      dependencies.

Sure, upgrading systems and following development is never easy and well 
structured brains are in heavy demand in any case - but we should really 
engineer things so that people spend time on reporting _real_ regressions - 
and not waste their time and energy on self-inflicted wounds.

The four very real downsides are:

1) I dont think it's honest to make an artificial distinction between a 
   user-visible bug that can be fixed via a one-time tweak to a .config, and 
   a user-visible bug that can be fixed via a one-time upgrade to a fixed 
   kernel.

   As far as the tester is involved the two are largely the same, and both 
   were caused by this shiny new 'upstream kernel' thing they just tested.

   Yes, to us developers there's a fundamental difference because one is a
   fix in the code the other is a change in the environment - but the user
   really doesnt make that distinction - both are largely black boxes to
   them.

   Also, it can actually get _worse_ than a regression: if it gets declared
   a feature/annoyance and no action is taken - then it's an unfixed bug and
   that's far worse than even the painful memory of a fixed bug.

2) Furthermore, many testers dont touch early -rcs because they know they
   have rough edges. So it's a linearly ongoing cost beyond -rc1.

3) It's not the individual small annoyances that matter but the sheer sum of 
   of such annoyances when migrating from one kernel to another. I still
   struggle with some of such issues myself when testing back to some old 
   kernel and keep wasting time on it - again and again. Keeping oldconfig 
   compatibility is really a prime-type quality of Linux kernel testing i 
   think.

   Especially a casual tester will be discouraged by such an experience:
   and more so if it's clearly avoidable via a few trivial tweaks - and the 
   tester senses this 'ease of fix' intuitively and gets a "not a bug" 
   pushback.

4) Also, some maintainers are using every excuse they can find to not have 
   to keep 'make oldconfig' compatibility. That is not because they
   are lazy, embarrased and defensive or evil, but it is a natural reaction: 
   they only see the small trivial annoyance they intruduce themselves - 
   which is in a code area and usecase they are prominently familiar with, 
   so they cannot personally relate to the trouble that users go through if 
   they hit such issues.

   But the thing is, we've got dozens and dozens of critical subsystems, and 
   if each one does just a single such stupid looking tiny thing in a kernel 
   cycle it mounts up to a real force. The sheer size of Linux is a real 
   multiplicator factor here IMO. The moment Linus condones it the precedent 
   is set and everyone will just say "others do it too every now and then 
   and Linus doesnt mind so buzz off".

In my experience the sum of such small stupid careless migration annoyances 
during upgrades snowballs way too much in practice, and it has become the 
main vector along which we lose good testers - so i am never shy to flame 
folks if they introduce such issues ;-) YMMV.

</soapbox ;) >

	Ingo

  parent reply	other threads:[~2009-02-04 19:08 UTC|newest]

Thread overview: 158+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-04 10:21 Rafael J. Wysocki
2009-02-04 10:21 ` [Bug #12400] git-latest: kernel oops in IOMMU setup Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12414] iwl4965 cannot use "ap auto" on latest 2.6.28/29? Rafael J. Wysocki
2009-02-04 19:15   ` Jeff Chua
2009-02-05  1:37     ` Rafael J. Wysocki
2009-02-05 14:34       ` Jeff Chua
2009-02-14 11:41   ` Jeff Chua
2009-02-14 18:46     ` Jeff Chua
2009-02-14 20:10       ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12416] Recent change to kernel spikes out ccache/distcc Rafael J. Wysocki
2009-02-05  1:57   ` Theodore Tso
2009-02-05  2:13     ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12415] WARNING: at drivers/net/wireless/iwlwifi/iwl-sta.c:689 Rafael J. Wysocki
2009-02-04 13:04   ` Christian Borntraeger
2009-02-05  1:39     ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12427] cpumask change causes sparc build bustage Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12418] Repeated ioctl(4, 0x40046445, ..) loop in glxgears Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12419] possible circular locking dependency on i915 dma Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12417] glx performance drop with: "x86: PAT: implement track/untrack of pfnmap regions for x86 - v3" Rafael J. Wysocki
2009-02-04 13:46   ` Ingo Molnar
2009-02-04 16:02     ` Alexey Fisher
2009-02-04 16:42       ` Ingo Molnar
2009-02-05  0:55         ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12490] ath5k related kernel panic in 2.6.29-rc1 Rafael J. Wysocki
2009-02-06 18:48   ` Bob Copeland
2009-02-06 23:55     ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12441] Xorg can't use dri on radeon X1950 AGP Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12444] X hangs following switch from radeonfb console - Bisected Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12491] i915 lockdep warning Rafael J. Wysocki
2009-02-04 22:37   ` Roland Dreier
2009-02-05  1:03     ` Rafael J. Wysocki
2009-02-06 22:46       ` Roland Dreier
2009-02-06 23:40         ` Jesse Barnes
2009-02-07  1:20         ` Brandeburg, Jesse
2009-02-07  1:48           ` Roland Dreier
2009-02-07 13:53             ` Rafael J. Wysocki
2009-02-11  0:43             ` Eric Anholt
2009-02-11 18:14               ` Roland Dreier
2009-02-04 10:23 ` [Bug #12493] ACPI related kernel panic when booting 2.6.29-rc2 Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12495] thinkpad problems during resume Rafael J. Wysocki
2009-02-04 13:06   ` Christian Borntraeger
2009-02-05  1:41     ` Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12494] Sony backlight regression from 2.6.28 to 29-rc Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12496] swsusp cannot find resume device (sometimes) Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12501] build bug in eeepc-laptop.c Rafael J. Wysocki
2009-02-04 10:23 ` [Bug #12497] new barrier warnings in 2.6.29-rc1 Rafael J. Wysocki
2009-02-06  8:12   ` Christoph Hellwig
2009-02-04 10:23 ` [Bug #12499] Problem with using bluetooth adaper connected to usb port Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12505] 2.6.29-rc1 Firefox crashing on page load Rafael J. Wysocki
2009-02-04 15:23   ` Justin Mattock
2009-02-04 16:46     ` Ingo Molnar
2009-02-04 18:15       ` Justin Mattock
2009-02-05  1:08         ` Rafael J. Wysocki
2009-02-05  1:37           ` Justin Mattock
2009-02-04 10:24 ` [Bug #12502] pipe_read oops on sh Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12503] [slab corruption] BUG key_jar: Poison overwritten Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12509] lockdep report. fb_mmap vs sys_mmap2 Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12508] "powerpc/pci: Reserve legacy regions on PCI" broke my G3 Rafael J. Wysocki
2009-02-04 21:44   ` Benjamin Herrenschmidt
2009-02-06 18:55     ` Mikael Pettersson
2009-02-04 10:24 ` [Bug #12506] Undefined symbols when CONFIG_MFD_PCF50633 is enabled Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12510] 2.6.29-rc2 dies on startup Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12551] end_request: I/O error, dev cciss/c0d0, sector 87435720 Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12538] xfs_fsr fails on 2.6.29-rc kernels Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12511] WARNING: at drivers/dma/dmaengine.c:352 Rafael J. Wysocki
2009-02-04 16:03   ` Dan Williams
2009-02-05  1:13     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12518] BUG: using smp_processor_id() in preemptible [00000000] code: dellWirelessCtl/ Rafael J. Wysocki
2009-02-04 15:58   ` Alex Riesen
2009-02-04 10:24 ` [Bug #12574] possible circular locking dependency detected Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12598] tg3 dead after resume Rafael J. Wysocki
2009-02-05  0:43   ` Parag Warudkar
2009-02-05  1:03     ` Jesse Barnes
2009-02-04 10:24 ` [Bug #12591] NULL pointer dereference in blk_queue_io_stat Rafael J. Wysocki
2009-02-04 12:53   ` Jens Axboe
2009-02-05  1:21     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12571] Suspend-resume on Dell Latitude D410 newly broken in 2.6.29-rc* Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12599] dri /dev node disappeared with 2.6.29-rc1 Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12602] CRED changes causing setuid failures Rafael J. Wysocki
2009-02-04 18:09   ` David Smith
2009-02-05  1:15     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12600] i915 lockdep warning Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12601] virt-manager broken on 2.6.29-rc2 Rafael J. Wysocki
2009-02-04 23:26   ` Stephen Hemminger
2009-02-05  1:25     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12606] fb_mmap: circular locking dependency on hibernation Rafael J. Wysocki
2009-02-04 14:43   ` Andrey Borzenkov
2009-02-05  1:43     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12605] Suspend regression, hang after matroxfb Rafael J. Wysocki
2009-02-05 12:16   ` Eric Sesterhenn
2009-02-05 16:12     ` Rafael J. Wysocki
2009-02-08 12:39       ` Eric Sesterhenn
2009-02-04 10:24 ` [Bug #12604] Commit 31a12666d8f0c22235297e1c1575f82061480029 slows down Berkeley DB Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12610] sync-Regression in 2.6.28.2? Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12609] v2.6.29-rc2 libata sff 32bit PIO regression Rafael J. Wysocki
2009-02-05 17:30   ` Hugh Dickins
2009-02-05 22:54     ` Rafael J. Wysocki
2009-02-06 23:10       ` Larry Finger
2009-02-06 23:58         ` Rafael J. Wysocki
2009-02-23 16:22           ` Larry Finger
2009-02-23 22:13             ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12608] 2.6.29-rc powerpc G5 Xorg legacy_mem regression Rafael J. Wysocki
2009-02-04 23:48   ` Benjamin Herrenschmidt
2009-02-05 17:23     ` Hugh Dickins
2009-02-05 21:05       ` Benjamin Herrenschmidt
2009-02-05 21:20         ` Hugh Dickins
2009-02-05 21:45         ` Dave Airlie
2009-02-06  6:01           ` Benjamin Herrenschmidt
2009-02-05 22:33         ` Jesse Barnes
2009-02-05 23:57           ` Benjamin Herrenschmidt
2009-02-06  5:40           ` Benjamin Herrenschmidt
2009-02-06 12:56             ` Hugh Dickins
2009-02-06 16:49               ` Jesse Barnes
2009-02-06 22:17                 ` Hugh Dickins
2009-02-06 22:45                   ` Jesse Barnes
2009-02-07  0:50                     ` Hugh Dickins
2009-02-07  1:47                       ` Jesse Barnes
2009-02-07  3:05                     ` Benjamin Herrenschmidt
2009-02-07 23:15                       ` Jesse Barnes
2009-02-07  2:51               ` Benjamin Herrenschmidt
2009-02-04 10:24 ` [Bug #12611] kernel BUG at kernel/cgroup.c:398! Rafael J. Wysocki
2009-02-05  1:02   ` Li Zefan
2009-02-05  1:53     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12613] [Suspend regression][DRM, RADEON] Rafael J. Wysocki
2009-02-04 22:25   ` etienne
2009-02-05  1:18     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12616] boot hang: async vs. kexec Rafael J. Wysocki
2009-02-04 16:50   ` Randy Dunlap
2009-02-05  1:26     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12617] unable to compile e100 firmware into kernel Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12615] boot hangs while bringing up gianfar ethernet Rafael J. Wysocki
2009-02-04 16:54   ` Ira Snyder
2009-02-05  1:23     ` Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12621] Resume broken on iBook Rafael J. Wysocki
2009-02-04 10:24 ` [Bug #12618] hackbench [pthread mode] regression with 2.6.29-rc3 Rafael J. Wysocki
2009-02-04 16:24 ` 2.6.29-rc3-git6: Reported regressions from 2.6.28 Linus Torvalds
2009-02-04 16:32   ` Ingo Molnar
2009-02-04 18:11   ` Norbert Preining
2009-02-04 18:17     ` Linus Torvalds
2009-02-04 18:21       ` Norbert Preining
2009-02-04 18:56       ` Ingo Molnar [this message]
2009-02-04 22:22         ` Bron Gondwana
2009-02-05  1:08           ` Ingo Molnar
2009-02-05  1:26             ` Bron Gondwana
2009-02-05  4:45         ` Eric Anholt
2009-02-05 14:51           ` Norbert Preining
2009-02-05 16:56           ` [PATCH] drm, i915: select framebuffer support automatically Ingo Molnar
2009-02-08 11:49             ` Dave Airlie
2009-02-05 17:17           ` 2.6.29-rc3-git6: Reported regressions from 2.6.28 Randy Dunlap
2009-02-05 19:12             ` Ingo Molnar
2009-02-05 19:14               ` Randy Dunlap
2009-02-05 19:20                 ` Ingo Molnar
2009-02-05 19:23                   ` Randy Dunlap
2009-02-05 19:36                     ` Ingo Molnar
2009-02-11  0:33                       ` Eric Anholt
2009-02-05  2:07   ` Rafael J. Wysocki
2009-02-04 13:42 Damien Wyart
2009-02-07 14:46 ` Rafael J. Wysocki

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=20090204185606.GA12991@elte.hu \
    --to=mingo@elte.hu \
    --cc=h-shimamoto@ct.jp.nec.com \
    --cc=jens.axboe@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=preining@logic.at \
    --cc=rjw@sisk.pl \
    --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

all inboxes | Powered by JetHome®