Re: [patch] 2.6.0-test5: serio config broken?

From: Tom Rini
Date: Wed Sep 10 2003 - 17:39:48 EST


On Thu, Sep 11, 2003 at 12:17:11AM +0200, Adrian Bunk wrote:
> On Wed, Sep 10, 2003 at 03:05:52PM -0700, Tom Rini wrote:
> > > >
> > > > How so? SERIO only selects SERIO_* bits, and INPUT only selects INPUT*
> > > > (and, imho, keyboard is input :)) bits.
> > > >...
> > >
> > > Let's say you remove the X86 dependency in the select in INPUT_KEYBOARD.
> >
> > You mean:
> > select KEYBOARD_ATKBD if STANDARD && X86
> > becomes:
> > select KEYBOARD_ATKBD if STANDARD
> > ?
>
> Yes.

That would, well break things. We're only forcing ATKBD on X86 right
now, thankfully.

> > > If you select SERIO=m on !X86 (with EMBEDDED/STANDARD enabled) this will
> > > select KEYBOARD_ATKBD=y...
> >
> > How? What you pick for SERIO does not select anything in INPUT.
> >
> > select is 'stronger' than the {bool,tristate} "Foo" if ... usage, so if
> > you have broken dependancies you get a different kind of failure (link,
> > as opposed to a shot foot) but IMHO it's more correct for restraints
> > that are of the form:
> > "Don't let the user shoot themseleves in the foot, easily".
>
> There's a dependency between SERIO and KEYBOARD_ATKBD that must be
> represented in the config rules.
>
> Let me paraphrase the dependency the other way round (I'm not sure
> whether the syntax is 100% correct):
>
> config KEYBOARD_ATKBD
> tristate "AT keyboard support" if EMBEDDED || !X86
> default y
> depends on INPUT_KEYBOARD
> select SERIO=m
> select SERIO=y if KEYBOARD_ATKBD=y
> help
> ...

Ah yes.

This is similar (the same, even?) to the test3 problem. Roman, can we
get select to somehow pay attention to depend as well? I do believe
it's possible to have A select B, have C depend on Z and end up with:
A=y
B=y
C=n

--
Tom Rini
http://gate.crashing.org/~trini/
-
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/