Messages in this thread | | | Date | Fri, 20 Feb 2009 22:08:10 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH][RFC] check for select dependency errors on config load |
| |
On Sat, 21 Feb 2009 00:24:05 -0500 (EST) Steven Rostedt <rostedt@goodmis.org> wrote:
> > There's been a few problems with SELECT and dependencies lately. > I've been burnt by it a few times myself. So I look at the kconfig > code and added this patch. It can use a bit more work but it does what > I want. > > When the config is loaded, it checks all the symbols that are > selected by an active config and makes sure the visible dependencies are > also activated. This should probably be moved to the writing of the > config instead, but since I just wanted to see if my current config was > OK, I did it on load. This is an RFC patch anyway, so fixes/comments are > definitely welcome. > > Here's what I get with the attached config running on 2.6.29-rc5. > > $ make menuconfig > scripts/kconfig/mconf arch/x86/Kconfig > .config:2561:warning: MICROCODE selects FW_LOADER which fails its dependencies! > .config:2561:warning: MICROCODE_INTEL selects FW_LOADER which fails its dependencies! > .config:2561:warning: PCMCIA_LOAD_CIS selects FW_LOADER which fails its dependencies! > .config:2561:warning: SCSI_SAS_LIBSAS selects SCSI_SAS_ATTRS which fails its dependencies! > .config:2561:warning: SCSI_AIC94XX selects FW_LOADER which fails its dependencies! > .config:2561:warning: KEYBOARD_ATKBD selects SERIO which fails its dependencies! > .config:2561:warning: KEYBOARD_ATKBD selects SERIO_LIBPS2 which fails its dependencies! > .config:2561:warning: KEYBOARD_ATKBD selects SERIO_I8042 which fails its dependencies! > .config:2561:warning: MOUSE_PS2 selects SERIO which fails its dependencies! > .config:2561:warning: MOUSE_PS2 selects SERIO_LIBPS2 which fails its dependencies! > .config:2561:warning: MOUSE_PS2 selects SERIO_I8042 which fails its dependencies! > .config:2561:warning: VT selects INPUT which fails its dependencies! > .config:2561:warning: DRM selects I2C_ALGOBIT which fails its dependencies! > .config:2561:warning: SND_EMU10K1 selects FW_LOADER which fails its dependencies! > > <exit out> >
OK, this is fairly easy to use.
You get
.config:1181:warning: PCMCIA_LOAD_CIS selects FW_LOADER which fails its dependencies!
So you then go into `make menuconfig' and type /^fw_loader$ to display FW_LOADER's dependencies.
Depends on: HOTPLUG && EMBEDDED
then do `egrep "HOTPLUG|EMBEDDED" .config'
And we discover weird things. Why does FW_LOADER depend on EMBEDDED?
And why the heck does INPUT depend on EMBEDDED?!??!
And what's up with CONFIG_SERIO?
Depends on: !S390 && (EMBEDDED || !X86)
hm.
| |