linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@kernel.org>
To: Stefan Richter <stefanr@s5r6.in-berlin.de>
Cc: Randy Dunlap <randy.dunlap@oracle.com>,
	Sam Ravnborg <sam@ravnborg.org>, Al Boldi <a1426z@gawab.com>,
	linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
	David Brownell <david-b@pacbell.net>, Greg KH <greg@kroah.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH 2/5] USB Kconfig: Select SCSI for USB Mass Storage support
Date: Sun, 6 Jan 2008 15:38:55 +0200	[thread overview]
Message-ID: <20080106133854.GH2082@does.not.exist> (raw)
In-Reply-To: <4780D3E5.20908@s5r6.in-berlin.de>

On Sun, Jan 06, 2008 at 02:13:09PM +0100, Stefan Richter wrote:
> Adrian Bunk wrote:
> > On Sun, Jan 06, 2008 at 01:18:48PM +0100, Stefan Richter wrote:
> >> I'm afraid this can't be put into practice.  (User says which hardware
> >> and protocols he needs to be supported, scripts magically assemble a
> >> suitable configuration.)
> > 
> > Distribution installers and live CDs like Knoppix even manage to 
> > magically assemble a suitable configuration (e.g. autodetecting which 
> > modules they should load) without asking the user any questions.
> 
> Module autoloading is quite different.

Both are "hardware -> required kernel support" mappings.

I know that people don't like this idea since the CML2 discussions, but 
there even don't seem to be any big problems if anyone wants to put all 
the pieces together and assemble a suitable .config only based on the 
autodetection tools of some distribution and without asking the user 
any questions.

> > The information the user has to give when configuring his kernel is 
> > whether he wants to connects USB disks - whether or not the 
> > implementation of the kernel driver uses the in-kernel SCSI layer we can 
> > easily handle automatically without bothering the user.
> > 
> >> I think
> >>   - sensibly modularize our software,
> >>   - tell the user which software components there are,
> >>   - what they are for,
> >>   - how they depend on each other,
> >>   - make it easy enough for the user to navigate in the dependency
> >>     graph,
> >>   - provide fundamental safeguards and checks for a proper software
> >>     configuration
> >> is the best we can do.
> > 
> > It sounds strange that what you call the "the best we can do" would be 
> > much worse than what we are currently doing...
> > 
> > The current status quo is that a user e.g. only has to know that his 
> > ethernet controller is a "Broadcom 440x/47xx", the fact that a Sonics 
> > Silicon Backplane bus is used on the card is handled automatically by 
> > kconfig.
> 
> if NET_ETHERNET
> ...
> config B44
> 	tristate "Broadcom 440x/47xx ethernet support"
> 	depends on SSB_POSSIBLE
> 	select SSB
> 	select MII
> ...
> endif # NET_ETHERNET
> 
> There is a B44 option.  The prompt string (in other cases the help text)
> tells what it is for.  Furthermore, four dependencies are encoded; one
> in the direct form, one by if/endif, two in reverse form.  There are no
> further hints how to satisfy SSB_POSSIBLE, NET_ETHERNET, SSB, MII.  The
> kconfig system is told to enable SSB and MII no matter what, as long as
> SSB_POSSIBLE, NET_ETHERNET, and B44 are != n.
> 
> This /is/ what we are currently doing, not "worse than what we are
> currently doing".  We
>   - sensibly modularize our software,
>   - tell the user which software components there are,
>   - what they are for,
>   - how they depend on each other,
>   - make it easy enough for the user to navigate in the dependency
>     graph,
>   - provide fundamental safeguards and checks for a proper software
>     configuration.  (Well, we actually walk on thin ice whenever we
>     use the 'select' keyword.)
>...

You miss the fundamental point:

The vast majority of kconfig users are _not_ kernel hackers, and they 
neither know nor want to know anything about kernel internals - they 
just want to build a kernel suitable for their system.

You want to make an UI easier to use for the developers but harder to 
use for the users, and that's a bad deal.

> Stefan Richter

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


  reply	other threads:[~2008-01-06 13:39 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-05 15:41 [PATCH 2/5] USB Kconfig: Select SCSI for USB Mass Storage support Al Boldi
2008-01-05 18:42 ` David Brownell
2008-01-05 19:30 ` Randy Dunlap
2008-01-05 21:03   ` Adrian Bunk
2008-01-05 21:09     ` Sam Ravnborg
2008-01-05 23:22       ` Randy Dunlap
2008-01-05 23:45         ` Adrian Bunk
2008-01-06  0:35           ` Stefan Richter
2008-01-06  0:58             ` Adrian Bunk
2008-01-06 11:29               ` Stefan Richter
2008-01-06 11:59                 ` Adrian Bunk
2008-01-06 12:32                   ` Stefan Richter
2008-01-06 12:58                     ` Adrian Bunk
2008-01-06 13:23                       ` Stefan Richter
2008-01-06 12:18               ` Stefan Richter
2008-01-06 12:37                 ` Adrian Bunk
2008-01-06 13:13                   ` Stefan Richter
2008-01-06 13:38                     ` Adrian Bunk [this message]
2008-01-06 13:55                       ` Sam Ravnborg
2008-01-06 13:57                       ` Stefan Richter
2008-01-06 14:45                     ` david
2008-01-06 13:41                       ` Stefan Richter
2008-01-06 15:05                         ` david
2008-01-06 14:08                           ` Stefan Richter
2008-01-06 17:11                           ` Alan Stern
2008-01-06 18:07                             ` Stefan Richter
2008-01-06  1:01             ` Randy Dunlap
2008-01-06 11:54         ` Stefan Richter
2008-01-06 12:05           ` Adrian Bunk
2008-01-06 12:41             ` Stefan Richter
2008-01-06  5:03       ` Al Boldi
2008-01-06 14:39         ` Stefan Richter
2008-01-06 17:07           ` Al Boldi
2008-01-06 17:50             ` Stefan Richter
2008-01-06 18:01               ` Stefan Richter
2008-01-06 18:23               ` Sam Ravnborg
2008-01-05 20:40 ` Stefan Richter

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=20080106133854.GH2082@does.not.exist \
    --to=bunk@kernel.org \
    --cc=a1426z@gawab.com \
    --cc=akpm@linux-foundation.org \
    --cc=david-b@pacbell.net \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=randy.dunlap@oracle.com \
    --cc=sam@ravnborg.org \
    --cc=stefanr@s5r6.in-berlin.de \
    /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;
as well as URLs for NNTP newsgroup(s).