Subject: Re: [patch 01/10] e1000e: make E1000E default to the same kconfig setting as E1000

From: Andrew Morton <[email-masked]>
Date: Fri, 14 Dec 2007 15:22:15 -0800

On Fri, 14 Dec 2007 15:39:26 -0500
Jeff Garzik <[email-masked]> wrote:

> [email-masked] wrote:
> > From: Randy Dunlap <[email-masked]>
> > 
> > Make E1000E default to the same kconfig setting as E1000.  So people's
> > machiens don't stop working when they use oldconfig.
> > 
> > Signed-off-by: Randy Dunlap <[email-masked]>
> > Cc: Jeff Garzik <[email-masked]>
> > Cc: Auke Kok <[email-masked]>
> > Signed-off-by: Andrew Morton <[email-masked]>
> > ---
> > 
> >  drivers/net/Kconfig |    1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff -puN drivers/net/Kconfig~e1000e-make-e1000e-default-to-the-same-kconfig-setting-as-e1000 drivers/net/Kconfig
> > --- a/drivers/net/Kconfig~e1000e-make-e1000e-default-to-the-same-kconfig-setting-as-e1000
> > +++ a/drivers/net/Kconfig
> > @@ -1986,6 +1986,7 @@ config E1000_DISABLE_PACKET_SPLIT
> >  config E1000E
> >  	tristate "Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support"
> >  	depends on PCI
> > +	default E1000
> 
> I am not inclined to apply this one.  This practice, applied over time, 
> will tend to accumulate weird 'default' and 'select' statements.
> 
> So I think the breakage that occurs is mitigated by two factors:
> 1) kernel hackers that do their own configs are expected to be able to 
> figure this stuff.
> 2) kernel builders (read: distros, mainly) are expected to have put 
> thought into the Kconfig selection and driver migration strategies.
> 
> PCI IDs move across drivers from time, and we don't want to apply these 
> sorts changes:  Viewed in the long term, the suggested patch is merely a 
> temporary change to allow kernel experts to more easily deal with the 
> PCI ID migration across drivers.
> 
> I would prefer simply to communicate to kernel experts and builders 
> about a Kconfig issue that could potentially their booting/networking... 
>   because this patch is only needed if the kernel experts do not already 
> know about a necessary config update.

You can take it out again later on - most people's .configs will then have
E1000E set.   People who still do `cp ancientconfig .config ; make oldconfig'
remain screwed.

I dunno.  I guess I'm not into causing people pain in an attempt to train
them to do what we want.  This is a popular driver and a *lot* of people
are going to:

- build new kernel

- install new kernel

- find it doesn't work, go through quite large amounts of hassle trying
  to work out why it stopped working.  Eventually work out that e1000
  stopped working.  Eventually work out that it stopped working because we
  forcibly switched them to a new driver which they didn't know about.

- reconfigure kernel

- rebuild, reinstall

Multiply that by 100s of people (at least).  All because Jeff wouldn't
apply a one-liner?