Messages in this thread | ![/](/images/icornerl.gif) | | Date | Wed, 30 Jul 2003 13:37:24 +0200 | From | Adrian Bunk <> | Subject | Re: [2.6 patch] let broken drivers depend on BROKEN{,ON_SMP} |
| |
On Wed, Jul 30, 2003 at 12:29:55PM +0100, John Bradford wrote: > > > > * Driver does not work, and is thus disabled. If it is not > > > > fixed in the near future, it will be considered to be > > > > OBSOLETE as well. > > > > > > > > CONFIG_BROKEN > > > > > > Please do _NOT_ do this - there is a far more important and worthwhile > > > reason to have a CONFIG_BROKEN than to simply save the few minutes of > > > inconvenience that including a non-compiling option in a kernel build > > > causes. > > > > > > Imagine the situation where a driver such as a SCSI driver builds > > > successfully, but it silently corrupts data under certain, (possibly > > > rare), circumstances. > > > > > > In that case, it's important to warn people that it's broken, because > > > it's not necessarily obvious, and could case significant data loss. > > > If something doesn't compile, it already gives you an error message. > > > The only problem is a few minutes of wasted time. > > > > You forget one important thing: > > If a _user_ of a stable kernel notices "it doesn't even compile" this > > gives a very bad impression of the quality of the Linux kernel. > > I don't agree. The stock kernel is a work in progress, and things get > broken from time to time as a normal part of development. Experienced > users will realise that, and I wouldn't encourage inexperienced users > to compile their own kernel from the stock trees anyway, because they > could easily miss bugfixes, including data corruption and security > ones, simply because they assume that they are in the mainline > kernel.
Whether you like it or not:
Many non-kernel-hackers compile their own kernels.
Even if you wouldn't encourage them, there are enough situations where they can't choose:
It occurs often that a fix or support for some hardware is only in the latest -pre or in the -ac tree.
You say "things get broken from time to time as a normal part of development". Ideally this should never happen in a stable series. We don't live in an ideal world, but we should try to be as close as possible to this goal.
> Compiling your own kernel from the stock kernel trees is still > something that should be considered for experienced users only. > > Besides, what's worse? Possible data corruption or a bad impression?
Possible data corruption is worse, but completely disabling this driver is even better.
> > > > * Driver works on uniprocessor but not on SMP and is thus > > > > disabled when compiling for SMP. It is assumed that the > > > > driver will be fixed for SMP if relevant. > > > > > > > > CONFIG_BROKEN_ON_SMP > > > > > > Please _don't_ do this either. It implies that if > > > CONFIG_BROKEN_ON_SMP isn't set, then it's SMP safe - a lot of drivers > > > will NOT have been tested on SMP, so it's a bad thing to assume that > > > is the case. > > >... > > > > My patch adds BROKEN_ON_SMP only to drivers that don't compile, but if a > > driver causes e.g. data corruption on SMP I don't see a reason against > > letting it depend on BROKEN_ON_SMP. > > The name BROKEN_ON_SMP implies that if you don't set it, what's left > is known to work on SMP. In a lot of cases, it'll actually be > untested on SMP.
Say which other drivers are completely broken on SMP without a fix available or in the near future and it's easy to add a BROKEN_ON_SMP.
As long as noone reports such a bug I assume a driver works.
> John.
cu Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |