Messages in this thread |  | | | Date | Thu, 17 Jan 2008 08:16:13 +0000 | | From | "Jan Beulich" <> | | Subject | Re: 2.6.23-git Kconfig regression | |
>>> David Brownell <david-b@pacbell.net> 17.01.08 01:02 >>>>On Wednesday 16 January 2008, Jan Beulich wrote:>> >>> Randy Dunlap <rdunlap@xenotime.net> 20.10.07 05:21 >>>>> >> Sorry for only now getting back to this.>> >> >On Fri, 19 Oct 2007 19:55:35 -0700 Randy Dunlap wrote:
>> >>> ...>> >> I'm pretty convinced that drivers/usb/gadget/Kconfig isn't really
>> written properly:>>That's orthogonal to whether that patch caused a regression,
>of course. The operational semantics have, except when they
>were changed, been that it did what it needed to do.
>>>> These prompt-less items should go after the choice (resulting
>> in the choice to become a boolean one),>>Maybe -- such a change would have been OK as part of the patch
>which changed the operational semantics of Kconfig.
I simply wasn't aware of dependencies on the hierarchy re-ordering
done inside menu_finalize() within choices, which is what broke this.
And I'm not convinced this hierarchy re-ordering is even fully
consistent in its current shape (i.e. it just happens to work for the
few cases it really is used in).
>>...>> these options are just pointless except for avoiding
>> >> #if defined(CONFIG_...) || defined(CONFIG_..._MODULE)'
>> >> in C sources.>>Well, avoiding such error-prone idioms would seem good to me.
>They're common enough, and nasty. But that's not why those
>mechanisms are there.
But nevertheless there are CONFIG_USB_GADGET_* dependencies in
sources. But in a draft re-write of that Kconfig I found an easy way to
keep these anyway, so the point isn't a concern to me anymore.
>> In that latter case, the choice could become a tristate
>> one, allowing all of the selections to be built at once as modules
>> (which really seems to be the way distro kernels would want to use
>> it) or any one of them to be built in (the current behavior, except
>> that at present even when using these as a module only a single
>> one can be selected).>>The requirements are that (a) just one peripheral controller
>driver be selectable, and (b) that it be linked either
>statically or dynamically. Related, that for the gadget
>drivers (c) none may be selected until the peripheral
>controller driver they'll be used with is known, and either
>(d1) one may be statically linked, or else (d2) any number
>may be built as modules, with only one loaded at a time.
So I'll keep it that way.
>This stuff isn't for "distro" kernels; it's for embedded
>environments of the "only this hardware exists" sort.
>Space matters, and having small code matters. Nobody has
>been interested enough in an "embedded distro" model to
>provide patches enabling such stuff.
Why not make the whole thing depend on EMBEDDED then? Or is
development for this perhaps being done in non-embedded
environments?
Thanks for the clarification in any case, now I just needs Roman's
opinion on the re-ordering issue in order to come up with a revised
patch.
Jan
|  |