[lkml]   [2003]   [Aug]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: 2.6 bug: kconfig implementation doesn't match the spec
On Fri, Aug 08, 2003 at 05:16:09PM +0200, Roman Zippel wrote:
> Hi,
> On Fri, 8 Aug 2003, Adrian Bunk wrote:
> > An example:
> >
> > config FOO
> > tristate
> > default m
> >
> > config BAR
> > tristate
> > default y if !FOO
> > default n
> >
> >
> > According to the kconfig spec BAR should be y, but the implementation in
> > 2.6.0-mm5 sets BAR to n.
> You probably forgot to set MODULES, tristate behaves like bool in this
> case and FOO becomes 'y' and '!FOO' is 'n'.

No, this is with CONFIG_MODULES=y.

Let me give another example where the kconfig implementation is
completely broken (BTW: again with CONFIG_MODULES=y):

According to your language definition,
m && !m
evaluates to "m" (it sounds a bit strange but follows directly from
rules (5) and (7) together with the interpretation of "m" as 1 as
explained in the section "Menu dependencies" of

Let's take the following Kconfig snippet:

config MOD
default m

config TEST8
default MOD && !MOD

config TEST9
default m && !m

With the explations above it's obvious both TEST8 and TEST9 should be
"m", but the current 2.6 kconfig implementation says:

# CONFIG_TEST8 is not set

That's not only different from the expected result directly derived from
the language definition, it also gives two completely different results
for the same expression!

> bye, Roman



"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:47    [W:0.063 / U:1.528 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site