All of lore.kernel.org
 help / color / mirror / Atom feed
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


  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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.