From: Adrian Bunk <bunk@stusta.de>
To: Trent Piepho <xyzzy@speakeasy.org>
Cc: Satyam Sharma <satyam.sharma@gmail.com>,
Andrew Morton <akpm@linux-foundation.org>,
Sam Ravnborg <sam@ravnborg.org>,
LKML <linux-kernel@vger.kernel.org>,
Roman Zippel <zippel@linux-m68k.org>,
Kumar Gala <galak@kernel.crashing.org>,
Simon Horman <horms@verge.net.au>
Subject: Re: RFC: kconfig select warnings bogus?
Date: Sun, 20 May 2007 20:30:49 +0200 [thread overview]
Message-ID: <20070520183049.GS6291@stusta.de> (raw)
In-Reply-To: <Pine.LNX.4.58.0705200228360.1671@shell4.speakeasy.net>
On Sun, May 20, 2007 at 02:52:14AM -0700, Trent Piepho wrote:
> On Sun, 20 May 2007, Satyam Sharma wrote:
> > On 5/20/07, Adrian Bunk <bunk@stusta.de> wrote:
> > > On Sun, May 20, 2007 at 05:25:24AM +0530, Satyam Sharma wrote:
> > > > On 5/20/07, Adrian Bunk <bunk@stusta.de> wrote:
> > > >> On Sun, May 20, 2007 at 05:06:33AM +0530, Satyam Sharma wrote:
> > > >> > On 5/20/07, Adrian Bunk <bunk@stusta.de> wrote:
> > > >> 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.
> > > >
> > > > ATARI_KBD_CORE, unlike MII, is defined only by some archs. And the
> > > > correct (most widely used or standard, in any case) idiom for that is
> > > > "default .. if ..". Or perhaps you can convert those helper code options in
> > > > arch/.../config's over to select too, as an exercise? :-)
> > >
> > > Perhaps not as an exercise, but actually for real.
> > >
> > > We had "fixed" such warnings in the past similar to your patch, but that
> > > was actually a mistake.
> > >
> > > And "correct" can easily be the opposite of "most widely used or standard"
> > > if you discover that you did it wrong in the past.
> >
> > In that case the correct approach here too would be to _shift_
> > ATARI_KBD_CORE from arch/m68k/Kconfig to drivers/input/Kconfig
> > and *then* use "select" from the config options that require it in
> > drivers/input/keyboard/Kconfig and drivers/input/mouse/Kconfig
> >
> > (and repeat for other such cases in arch/...)
>
> You don't need a huge '||' chain, you can always have more than one default
> line:
>
> config ATARI_KBD_CORE
> bool
> default y if KEYBOARD_ATARI
> default y if MOUSE_ATARI
>
> Basically a line "config A \n select B" is transformed into "config B \n
> default y if A". It's the same number of lines, they're just in a new place.
Only if the select'ed option is a bool.
With tristates they are doubled.
And for user visible options like MII you need an additional helper
option.
And the "just in a new place" makes a big difference in readability.
Compare the version of arch/mips/Kconfig in kernel 2.6.0 with the
version in current kernels.
E.g. tell me whether there's any system that doesn't select any
SYS_SUPPORTS_*_ENDIAN. There are possible errors that can be spotted
much easier when using "select" at the right places.
> Another alternative would be to shift the arch specific drivers to a file
> that's arch specific. e.g. move MOUSE_ATARI from drivers/input/mouse/Kconfig
> to arch/m68k/Kconfig.
Where is for a Kconfig user (person compiling her own kernel) the
logical place to search for the Atari mouse driver option?
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
next prev parent reply other threads:[~2007-05-20 18:31 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-19 15:15 RFC: kconfig select warnings bogus? Sam Ravnborg
2007-05-19 18:09 ` Andrew Morton
2007-05-19 22:17 ` Satyam Sharma
2007-05-19 22:49 ` Satyam Sharma
2007-05-19 23:09 ` Adrian Bunk
2007-05-19 23:17 ` Satyam Sharma
2007-05-19 23:25 ` Adrian Bunk
2007-05-19 23:36 ` Satyam Sharma
2007-05-19 23:41 ` Satyam Sharma
2007-05-19 23:51 ` Adrian Bunk
2007-05-20 0:02 ` Satyam Sharma
2007-05-19 23:48 ` Adrian Bunk
2007-05-19 23:55 ` Satyam Sharma
2007-05-20 0:13 ` Adrian Bunk
2007-05-20 0:19 ` Satyam Sharma
2007-05-20 9:52 ` Trent Piepho
2007-05-20 10:58 ` Stefan Richter
2007-05-20 11:23 ` Trent Piepho
2007-05-20 11:44 ` Stefan Richter
2007-05-20 19:57 ` Trent Piepho
2007-05-20 20:12 ` Stefan Richter
2007-05-20 20:41 ` Trent Piepho
2007-05-22 15:13 ` Satyam Sharma
2007-05-20 18:30 ` Adrian Bunk [this message]
2007-05-20 0:46 ` Stefan Richter
2007-05-20 0:53 ` Satyam Sharma
2007-05-20 1:04 ` Satyam Sharma
2007-05-20 8:31 ` Stefan Richter
2007-05-20 11:38 ` Satyam Sharma
2007-05-20 11:47 ` Stefan Richter
2007-05-20 11:57 ` Satyam Sharma
2007-05-20 13:09 ` Stefan Richter
2007-05-20 13:50 ` Satyam Sharma
2007-05-20 14:39 ` Stefan Richter
2007-05-22 14:53 ` Satyam Sharma
2007-05-22 17:03 ` Stefan Richter
2007-05-22 17:13 ` Satyam Sharma
2007-05-22 17:38 ` Stefan Richter
2007-05-22 17:46 ` Satyam Sharma
2007-05-22 17:54 ` Stefan Richter
2007-05-22 17:59 ` Satyam Sharma
2007-05-20 18:23 ` Adrian Bunk
2007-05-19 23:05 ` Adrian Bunk
2007-05-19 23:17 ` Satyam Sharma
2007-05-19 23:21 ` Satyam Sharma
2007-05-19 23:29 ` Adrian Bunk
2007-05-19 23:32 ` Satyam Sharma
2007-05-19 23:23 ` Adrian Bunk
2007-05-19 23:22 ` Andrew Morton
2007-05-20 0:02 ` Adrian Bunk
2007-05-20 0:11 ` Satyam Sharma
2007-05-20 9:43 ` Russell King
2007-05-20 9:40 ` Russell King
2007-05-20 10:17 ` Sam Ravnborg
2007-05-20 11:07 ` Geert Uytterhoeven
2007-05-21 0:25 ` Roman Zippel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070520183049.GS6291@stusta.de \
--to=bunk@stusta.de \
--cc=akpm@linux-foundation.org \
--cc=galak@kernel.crashing.org \
--cc=horms@verge.net.au \
--cc=linux-kernel@vger.kernel.org \
--cc=sam@ravnborg.org \
--cc=satyam.sharma@gmail.com \
--cc=xyzzy@speakeasy.org \
--cc=zippel@linux-m68k.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox