This patch removes the EXPERIMENTAL option and all dependencies on
EXPERIMENTAL because they are pointless.Complete rationale:
- Many people and all distributions are currently forced to enable
CONFIG_EXPERIMENTAL since the options for many device drivers depend
on this option.
I have yet to see someone not being able to install his favorite
distribution on his computer only because the distribution did choose
to disable all SATA drivers with dependencies on EXPERIMENTAL in their
kernels...
- History has shown that often the dependency on EXPERIMENTAL is not
removed when the code has proven usable.
As an example, is our NFSv4 support really still in an
"alpha-test phase" [1], or is it already ready for being used?
I don't know the answer in this specific case, but I wouldn't answer
"still in an alpha-test phase" only based on the fact that the NFSv4
options still depend on EXPERIMENTAL.
- It might have been differently 10 years ago, but today everything that
is available in a released kernel should also be in a usable state.[1] quoted from the CONFIG_EXPERIMENTAL help text
Some subsystem maintainers might want to add (and maintain!) subsystem
specific options FOOBAR_EXPERIMENTAL limited to their subsystem instead.This patch does not touch "EXPERIMENTAL" strings in prompts - there was
anyway no strong relation in any direction between prompts claiming an
option was experimental and actual dependencies on EXPERIMENTAL...For avoiding clashes with other patches, this patch temporarily makes
CONFIG_EXPERIMENTAL available as always enabled option.---
This patch has been sent on:
- 17 Nov 2007Documentation/DocBook/kernel-hacking.tmpl | 7 --
Documentation/lguest/lguest.txt | 4 -
arch/alpha/Kconfig | 1
arch/arm/Kconfig | 10 +--
arch/frv/Kconfig | 1
arch/ia64/Kconfig | 6 +-
arch/m68k/Kconfig ...
Unfortunately I have to agree. The only think it does is confusing
users, when they forget to enable it.
--
Krzysztof Halasa
-
I don't think this is good idea. But perhaps 'experimental' should be
removed from stuff that is really stable these days, like SATA?Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-
I suspect that given the "once it escapes, it's cast in stone" view we take
towards user-visible API/etc, there isn't much *real* room for an
'EXPERIMENTAL' flag anymore. Most of the usage should probably be confined to
individual drivers, where all we should need is a 'default n' and suitable
warning verbiage in the Kconfig file warning about the driver eating your
filesystems and small animals for breakfast. We certainly shouldn't have
one big flag for *all* in-progress drivers - I don't need to accidentally
enable a busticated ethernet driver because I want a USB widget. And if
you're worried about people accidentally enabling it, then *each driver*
should have a 'Do you really mean it?' flag with *opposite* sense (so
that 'make allyesconfig' doesn't turn it on by accident).Anything bigger than that, we probably want to redefine 'experimental'
as "it doesn't escape from -mm to mainline till it's ready".
On Mon, Nov 26, 2007 at 10:44:44PM -0500, Valdis.Kletnieks@vt.edu wrote:
> I suspect that given the "once it escapes, it's cast in stone" view we take
> towards user-visible API/etc, there isn't much *real* room for an
> 'EXPERIMENTAL' flag anymore. Most of the usage should probably be confined to
> individual drivers, where all we should need is a 'default n' and suitable
> warning verbiage in the Kconfig file warning about the driver eating your
> filesystems and small animals for breakfast.Potential corruptors are usually flagged with (DANGEROUS) in the text,
(One may argue that they shouldn't have escaped -mm)> We certainly shouldn't have
> one big flag for *all* in-progress drivers - I don't need to accidentally
> enable a busticated ethernet driver because I want a USB widget.So no ethernet driver at all is better than a broken but mostly working one?
Again if it isn't mostly working, it shouldn't have escaped -mmDave
No.
The point is that using the *same* flag to control whether I can select
a mostly-working USB widget and a mostly-working Ethernet driver is Just Wrong.Those of us who live in the US may have seen the insurance commercial where
Joe Sixpack is asking "Honey, what does this switch do?" "I don't know" flip,
flip, flip with no obvious impact. Meanwhile, 3 houses down, somebody's car
is being beat up by a garage door opener going open/close/open/close...I enable EXPERIMENTAL to enable my USB widget. When the next release comes out,
I then go and do something like a 'make [foo]config'. What indication do I
get that now-selectable device drivers are 'depends on EXPERIMENTAL' and *not*
safe for selection? (Yes, in menuconfig, you can ask it to show the 'depends
on' list, *if* you suspect that it might be an issue. But why would I suspect
that?)In no case should we be creating a situation where users are thinking "Damn,
every driver may or may not be bodgy, I have to *check* if it's experimental
before I enable it, just because there was one that I *asked* for".
Particularly fun if you're migrating to new hardware and you don't *know* yet
which drivers you need, and you're getting prompted for possibly-dodgy ALSA
modules because you asked for a USB module....(And yes, trying to wade through all the ALSA/Intel HDA/AC97/Sigmatel *was*
painful enough when I moved from a Dell Latitude C840 to a D820 - fortunately
enough, I didn't have to deal with EXPERIMENTAL ALSA drivers adding to the
mix.. )EXPERIMENTAL in a mainline kernel as a *single* switch for a *lot* of totally
unreleated code is even more broken than EMBEDDED (which at least had a common
rationale). And over in the -mm kernel where it *should* be, it's superfluous
at best, because a -mm kernel might as well just add -DCONFIG_EXPERIMENTAL=y to
CFLAGS and save you the effort. ;)
It's not the SATA subsystem itself that is experimental.
There are some some drivers that are still experimental.That's the same like e.g. with network drivers where the subsystem is
stable but some drivers are not (yet).And therefore people are forced to enable CONFIG_EXPERIMENTAL for
getting the kernel running on their hardware.But e.g. the fact that a user must enable an experimental SATA driver
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-
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Martin Michlmayr | Network slowdown due to CFS |
| Ingo Molnar | Re: x86 arch updates also broke s390 |
git: | |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| David Miller | [GIT]: Networking |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Natalie Protasevich | [BUG] New Kernel Bugs |
