David Miller wrote:From: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
Date: Thu, 03 Jul 2008 19:56:02 +0100
It's wrong to change the CONFIG_FIRMWARE_IN_KERNEL default to 'Y',
because the _normal_ setting for that option _really_ should be 'N'.
On what basis? From a "obviously works" basis, the default should be
'y'.
I already changed it to 'y'.
What we're doing now is just cleaning up the older drivers which don't
use request_firmware(), to conform to what is now common practice.
You say "conform" I say "break".
You mean...
"What we're doing now is just cleaning up the older drivers
which don't use request_firmware(), to break to what is now
common practice."
?
Doesn't really scan, does it?
Common practice in modern Linux drivers is to use request_firmware(). I'm just going through and fixing up the older ones to do that too.
(After making it possible to build that firmware _into_ the kernel so that we aren't forcing people to use an initrd where they didn't before, of course.)
If it was purely technical, you wouldn't be choosing defaults that
break things for users by default.
Actually, the beauty of Linux is that we _can_ change things where a minor short-term inconvenience leads to a better situation in the long term.
Jeff and I warned you about this from day one, you did not listen, and
now we have at least 10 reports just today of people with broken
networking.
Out of interest... of those, what proportion would be 'fixed' if they'd just paid attention when running 'make oldconfig', which is now addressed because I've changed the FIRMWARE_IN_KERNEL default to 'y'?
And how many would be 'fixed' if someone had given me a straight answer when I asked about the TSO firmware, and that failure path no longer aborted the driver initialisation but instead just fell back to non-TSO?
I'll look at making the requirement for 'make firmware_install' more obvious, or even making it happen automatically as part of 'modules_install'.