[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070519234844.GN6291@stusta.de>
Date: Sun, 20 May 2007 01:48:44 +0200
From: Adrian Bunk <bunk@...sta.de>
To: Satyam Sharma <satyam.sharma@...il.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Sam Ravnborg <sam@...nborg.org>,
LKML <linux-kernel@...r.kernel.org>,
Roman Zippel <zippel@...ux-m68k.org>,
Kumar Gala <galak@...nel.crashing.org>,
Simon Horman <horms@...ge.net.au>
Subject: Re: RFC: kconfig select warnings bogus?
On Sun, May 20, 2007 at 05:06:33AM +0530, Satyam Sharma wrote:
> On 5/20/07, Adrian Bunk <bunk@...sta.de> wrote:
>>...
>> Consider ATARI_KBD_CORE was used by 20 drivers.
>>
>> Using select for such not user visible helper variables is a really nice
>> thing, and much more readable (and therefore much less likely to contain
>> bugs) than dependencies with tons of "||"'s.
>
> Well, the "default .. if .." kind of idiom is fairly common (I could say
> almost standard), in arch/.../config's. It's been used for some time,
> and for several symbols over there. But you're right that if 20 drivers
> used ATARI_KBD_CORE, we'd get tons of ugly "||"'s there, so
> perhaps we do need some kind of fix for this.
And the fix is to use select.
Compare the handling of options like IRQ_CPU in arch/mips/Kconfig in
current kernels with the handling in kernel 2.6.0 .
Or as an exercise, change drivers/net/Kconfig to no longer use
"select MII". When you are finished, ensure that you are handling it
properly although the option is user visible...
There are cases where "default .. if .." is the right idiom, but there
are also cases where "select" is the right idiom. And for helper code
like ATARI_KBD_CORE, "select" is the right idiom.
cu
Adrian
--
"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 majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists