Re: Linux 2.6.39
From: Catalin Marinas
Date: Mon May 23 2011 - 06:49:58 EST
On Thu, 2011-05-19 at 17:23 +0100, Randy Dunlap wrote:
> On Thu, 19 May 2011 17:16:32 +0100 Catalin Marinas wrote:
> > On 19 May 2011 16:44, Mark Lord <kernel@xxxxxxxxxxxx> wrote:
> > > Here's some more funny business that was new after rc7-git12:
> > >
> > > warning: (AX88796_93CX6 && RTL8180 && RTL8187 && ADM8211 && RT2400PCI &&
> > > RT2500PCI && RT61PCI && RT2800PCI && R8187SE) selects EEPROM_93CX6 which has
> > > unmet direct dependencies (MISC_DEVICES)
> > > warning: (ACPI_APEI) selects PSTORE which has unmet direct dependencies
> > > (MISC_FILESYSTEMS)
> > >
> > > The exact same .config didn't do that with rc7-git12,
> > > but does do it with 2.6.39 final.
> > >
> > > Odd thing is, if I select both MISC_DEVICES and MISC_FILESYSTEMS,
> > > but do NOT select anything from under either of those,
> > > the warnings go away.
> > >
> > > Which likely means the warnings are totally bogus.
> >
> > The problem is:
> >
> > AX88796_93CX6 selects EEPROM_93CX6
> > EEPROM_93CX6 depends on MISC_DEVICES (as part of the EEPROM menu which
> > is only included if MISC_DEVICES)
> >
> > By enabling MISC_DEVICES, you allow AX88796_93CX6 to select
> > EEPROM_93CX6 without any warning as it has the dependencies met.
> >
> > The issue here is that EEPROM_93CX6 doesn't really depend on any
> > MISC_DEVICES infrastructure. That's just a directory for various
> > drivers and MISC_DEVICES only has a visibility role. There was a
> > proposal last year for kbuild to differentiate between dependency and
> > visibility but I don't know what happened to it.
>
> fwiw, there is a VISIBLE attribute now. It defaults to yes/on.
OK. It helps but only if all the misc devices have "visible if
MISC_DEVICES" in their config options and entirely eliminate the
"if/endif" block.
Alternatively, maybe the if/endif block could generate a visibility
expression rather than a dependency. It works for MISC_DEVICES but I'm
not sure whether this is applicable across the kernel.
--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/