Messages in this thread | | | Date | Fri, 11 Apr 2008 21:25:19 +0200 | From | Willy Tarreau <> | Subject | Re: [patch] e1000=y && e1000e=m regression fix |
| |
On Fri, Apr 11, 2008 at 01:01:28PM -0600, Matthew Wilcox wrote: > On Fri, Apr 11, 2008 at 11:51:07AM -0700, Linus Torvalds wrote: > > Because your version has exactly the same problem that the current code > > has: it asks questions that aren't sensible to people who don't care. It > > also keeps the old E1000 name for "PCI chips only", which means that > > people who just use an old config and ignore new questions will suddenly > > lose their ability to use the E1000 driver if they have a PCI-E card. > > We only support people keeping their old configs after they run 'make > oldconfig', right? At which point they'd be prompted for E1000_SUPPORT. > Presumably they'd think "That's odd. I'm sure I had that selected > before", then select it. Then oldconfig skips over CONFIG_E1000 because > it already knows the answer to that one and they're prompted with a > question about PCIe support. Now something is clearly strange. Perhaps > they look at the help text at this point and it says to go with 'Y' or > 'M' if they're not sure.
I don't think this will happen like that. People will simply think as usual "ah, they have added support for new hardware, but since everything in my machine was supported, I don't need it".
I think that the correct solution to help people is not at build time, but at run time. The e1000 driver should just *check* if there are PCI-IDs that it used to manage and that it does not anymore, for unclaimed devices, and report a warning message clearly indicating that these devices are not handled anymore and that for this, the user must load e1000e. It will :
a) help people know what to load if they need to update modprobe.conf b) just require a new "make menuconfig;make modules" after the poor guy has been caught.
It's not a problem to have to tweak the config and reboot several times, provided that the user is guided. Almost none of us has ever blindly upgraded without a few post-boot adjustments.
> That's the most important bit of help texts for me. Do I want Control > Groups? Will my machine break if I don't select them? I have no idea > what a 'process cgroup subsystem' is, and I don't care. But the help > text tells me I can say "n" and nothing will break.
Here if people don't know, they will reply "no" too.
> > So most users: > > - want to just say "E1000", and not care about type. > > - want to have old configurations continue working (ie if you haev had > > "E1000" driving your hardware before, it should _continue_ to do so, > > with no need to select a _new_ E1000E question! > > > > Nobody wants to care deeply whether it's a PCI-E or PCI chip. In fact, > > it's almost impossible to tell. Here, quickly, tell me which one mine is > > (this is from /sbin/lspci): > > > > 00:19.0 Ethernet controller: Intel Corporation 82566DM Gigabit Network Connection (rev 02) > > I quite agree. I have no idea either. All I know is that my ICH9 box > didn't work until e1000e was released ;-)
I'm pretty sure it's PCI-E, because Linus got caught first ;-) But of course, that should not be an accepted guess method.
Willy
| |