2004-04-02 13:09:22

by Olaf Zaplinski

[permalink] [raw]
Subject: 2.6.4: disabling SCSI support not possible

Hi *,

I cannot disable SCSI completely in 2.6.4's 'menuconfig'.

Regards
Olaf


2004-04-02 13:18:08

by Grzegorz Kulewski

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, 2 Apr 2004, Olaf Zaplinski wrote:

> Hi *,
>
> I cannot disable SCSI completely in 2.6.4's 'menuconfig'.

In default config file there is activated something under USB, what
depends on SCSI. Try to disable that first.


Grzegorz Kulewski

2004-04-02 13:21:58

by Sean Neakums

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

Olaf Zaplinski <[email protected]> writes:

> I cannot disable SCSI completely in 2.6.4's 'menuconfig'.

I believe that some kernel components require SCSI to be useful and so
force SCSI to be activated. One example that springs to mind is
usb-storage.

2004-04-02 13:42:24

by Russell King

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, Apr 02, 2004 at 02:21:40PM +0100, Sean Neakums wrote:
> Olaf Zaplinski <[email protected]> writes:
>
> > I cannot disable SCSI completely in 2.6.4's 'menuconfig'.
>
> I believe that some kernel components require SCSI to be useful and so
> force SCSI to be activated. One example that springs to mind is
> usb-storage.

usb-storage should depend on SCSI rather than forcing SCSI to be
enabled.

Using 'select' is all very well for the case where the target
configuration symbol is not user selectable, but in the case that
it is, it leads to the confusion shown above.

Maybe USB_STORAGE help text should say that it needs SCSI support?

Therefore, I propose this patch:

--- orig/drivers/usb/storage/Kconfig Sat Mar 20 09:22:45 2004
+++ linux/drivers/usb/storage/Kconfig Fri Apr 2 14:41:05 2004
@@ -4,8 +4,7 @@

config USB_STORAGE
tristate "USB Mass Storage support"
- depends on USB
- select SCSI
+ depends on USB && SCSI
---help---
Say Y here if you want to connect USB mass storage devices to your
computer's USB port. This is the driver you need for USB floppy drives,
@@ -13,6 +12,9 @@ config USB_STORAGE
similar devices. This driver may also be used for some cameras and
card readers.

+ Please select SCSI support before enabling USB Mass Storage
+ support.
+
To compile this driver as a module, choose M here: the
module will be called usb-storage.


--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core

2004-04-02 14:03:50

by Marc-Christian Petersen

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Friday 02 April 2004 15:42, Russell King wrote:

Hi Russel,

> --- orig/drivers/usb/storage/Kconfig Sat Mar 20 09:22:45 2004
> +++ linux/drivers/usb/storage/Kconfig Fri Apr 2 14:41:05 2004
> @@ -4,8 +4,7 @@
>
> config USB_STORAGE
> tristate "USB Mass Storage support"
> - depends on USB
> - select SCSI
> + depends on USB && SCSI
> ---help---
> Say Y here if you want to connect USB mass storage devices to your
> computer's USB port. This is the driver you need for USB floppy drives,
> @@ -13,6 +12,9 @@ config USB_STORAGE
> similar devices. This driver may also be used for some cameras and
> card readers.
>
> + Please select SCSI support before enabling USB Mass Storage
> + support.
> +
> To compile this driver as a module, choose M here: the
> module will be called usb-storage.

pretty useless if you do not see "USB Mass Storage support" config options due
to disabled SCSI ;)

I'd suggest a comment, when SCSI is disabled, that USB Mass Storage is
disabled unless you select SCSI. I tried to cook up a simple patch but it
seems I don't know kbuild very well. The menu structure messed up after I did
it.

ciao, Marc

2004-04-02 16:59:59

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, Apr 02, 2004 at 02:42:17PM +0100, Russell King wrote:
> On Fri, Apr 02, 2004 at 02:21:40PM +0100, Sean Neakums wrote:
> > Olaf Zaplinski <[email protected]> writes:
> >
> > > I cannot disable SCSI completely in 2.6.4's 'menuconfig'.
> >
> > I believe that some kernel components require SCSI to be useful and so
> > force SCSI to be activated. One example that springs to mind is
> > usb-storage.
>
> usb-storage should depend on SCSI rather than forcing SCSI to be
> enabled.

No, this is the way it used to be, and it caused all kinds of problems
in the past. It was switched to use 'select' on purpose, and should
stay that way.

thanks,

greg k-h

2004-04-02 17:16:49

by Russell King

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, Apr 02, 2004 at 08:59:41AM -0800, Greg KH wrote:
> No, this is the way it used to be, and it caused all kinds of problems
> in the past. It was switched to use 'select' on purpose, and should
> stay that way.

It's causing problems today by preventing people from being able to
de-select SCSI for no obvious reason.

It is far less intuitive to know you have to turn off USB_STORAGE
before you can turn off SCSI than to know that you have to turn on
SCSI before you can turn on USB_STORAGE.

If you wish to keep it this way, could we either have:

(a) a note in the SCSI help text to say that the option is forced
on by USB_STORAGE, so people know what to turn off.

or

(b) have kconfig tell you why you can't turn off the option.

Silently preventing options being turned off with no obvious reason
is a pretty major misfeature.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core

2004-04-02 17:56:23

by Kevin P. Fleming

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

Russell King wrote:

> (b) have kconfig tell you why you can't turn off the option.
>
> Silently preventing options being turned off with no obvious reason
> is a pretty major misfeature.

It's even worse than that; with USB_STORAGE enabled, CONFIG_SCSI doesn't
even show an option selection box, so it's not even obvious that it _is_
an option, rather than a comment.

2004-04-02 18:14:30

by Greg KH

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, Apr 02, 2004 at 06:16:30PM +0100, Russell King wrote:
> On Fri, Apr 02, 2004 at 08:59:41AM -0800, Greg KH wrote:
> > No, this is the way it used to be, and it caused all kinds of problems
> > in the past. It was switched to use 'select' on purpose, and should
> > stay that way.
>
> It's causing problems today by preventing people from being able to
> de-select SCSI for no obvious reason.

Ok, you get people complaining either way. So no matter what people
aren't happy :(

As Linus is the one who enabled this option for CONFIG_USB_STORAGE, I'm
going to rule that it should stay the way it currently is.

thanks,

greg k-h

2004-04-02 19:33:15

by Ricky Beam

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Fri, 2 Apr 2004, Russell King wrote:
>usb-storage should depend on SCSI rather than forcing SCSI to be
>enabled.

Actually, it should "require" SCSI, but the kernel configuration logic
does not support that.

>Using 'select' is all very well for the case where the target
>configuration symbol is not user selectable, but in the case that
>it is, it leads to the confusion shown above.

Indeed. "select" is very useful for enabling options that cannot otherwise
be enabled. However, it gets mis-applied in cases like this to address the
"stupid user" problem. (see above re: missing "require") In fact, the
only place I can forgive the use of select on user selectable options in
within the input layer options -- select is used to force a valid usable
configuration instead of letting someone compile a kernel without any
keyboard support, BUT, it's still user tunable if "embedded" is enabled.

--Ricky

(see also: http://bk.troz.com:14690/linux-2.6-bk/user=jfbeam/[email protected]
for additional SELECT removals.)


2004-04-05 22:23:00

by Bill Davidsen

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

Russell King wrote:
> On Fri, Apr 02, 2004 at 08:59:41AM -0800, Greg KH wrote:
>
>>No, this is the way it used to be, and it caused all kinds of problems
>>in the past. It was switched to use 'select' on purpose, and should
>>stay that way.
>
>
> It's causing problems today by preventing people from being able to
> de-select SCSI for no obvious reason.
>
> It is far less intuitive to know you have to turn off USB_STORAGE
> before you can turn off SCSI than to know that you have to turn on
> SCSI before you can turn on USB_STORAGE.

Intuitive isn't the issue, if you can't figure out why you can't turn
off SCSI, you leave it on, which you need to make USB storage work. If
you're trying to make a small kernel you presumably would have turned
off USB if you didn't want it. The other way, if you can turn on USB w/o
SCSI, it won't work, and people thing Linux is broken.

The issue is that what we have works but it's not obvious why, vs.
doesn't work and also isn't obvious why. Thank you, work by default is
better.
>
> If you wish to keep it this way, could we either have:
>
> (a) a note in the SCSI help text to say that the option is forced
> on by USB_STORAGE, so people know what to turn off.

Chances are that most people wouldn't have USB on if they didn't want
it, but there's no downside to doing this.
>
> or
>
> (b) have kconfig tell you why you can't turn off the option.

I thought that was what (a) did.
>
> Silently preventing options being turned off with no obvious reason
> is a pretty major misfeature.

Compared to enabling USB storage with no hope of having it work? Adding
user info is desirable, but making it easy, or even possible, to build a
non-working config is a lot more of a problem. You haven't compiled on
a slow machine lately, forcing config combinations which work is a
benefit of kconfig.

If you want it broken you have to edit the config code. That's a good thing.

--
-bill davidsen ([email protected])
"The secret to procrastination is to put things off until the
last possible moment - but no longer" -me

2004-04-06 08:43:07

by Russell King

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Mon, Apr 05, 2004 at 06:17:14PM -0400, Bill Davidsen wrote:
> Intuitive isn't the issue, if you can't figure out why you can't turn
> off SCSI, you leave it on, which you need to make USB storage work. If
> you're trying to make a small kernel you presumably would have turned
> off USB if you didn't want it. The other way, if you can turn on USB w/o
> SCSI, it won't work, and people thing Linux is broken.

When I hit it, I was trying to build a kernel for test purposes, so I
didn't want all the drivers turned on. I found I couldn't turn off
SCSI and continued anyway turning other things off. However, USB appears
_after_ SCSI, you can not go through the configuration logically to turn
off features. Moreover, you do not get any suggestion when attempting
to turn SCSI off that you need to turn off USB.

> Chances are that most people wouldn't have USB on if they didn't want
> it, but there's no downside to doing this.

The x86 default configuration has USB + USB Storage turned on. It makes
it _non-trivial_ to turn SCSI off unless you have prior knowledge that
you need to turn USB off before hand.

> > (b) have kconfig tell you why you can't turn off the option.
>
> I thought that was what (a) did.

No - the configuration system just doesn't let you turn SCSI off. No
complaint, no warning, no nothing. It just won't change the symbol.

> > Silently preventing options being turned off with no obvious reason
> > is a pretty major misfeature.
>
> Compared to enabling USB storage with no hope of having it work? Adding
> user info is desirable, but making it easy, or even possible, to build a
> non-working config is a lot more of a problem. You haven't compiled on
> a slow machine lately, forcing config combinations which work is a
> benefit of kconfig.

Umm, you're talking to an ARM developer who builds some kernels natively.
I suspect that your definition of "slow" is actually faster than my
definition of the same.

> If you want it broken you have to edit the config code. That's a good thing.

Read what I'm saying. *Silently* preventing options being turned off
with *no* *obvious* *reason* is a pretty major misfeature.

I hope the emphasis will highlight the problem more clearly.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core

2004-04-06 10:55:50

by Marc-Christian Petersen

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Tuesday 06 April 2004 10:42, Russell King wrote:

Hi,

> > Intuitive isn't the issue, if you can't figure out why you can't turn
> > off SCSI, you leave it on, which you need to make USB storage work. If
> > you're trying to make a small kernel you presumably would have turned
> > off USB if you didn't want it. The other way, if you can turn on USB w/o
> > SCSI, it won't work, and people thing Linux is broken.

> When I hit it, I was trying to build a kernel for test purposes, so I
> didn't want all the drivers turned on. I found I couldn't turn off
> SCSI and continued anyway turning other things off. However, USB appears
> _after_ SCSI, you can not go through the configuration logically to turn
> off features. Moreover, you do not get any suggestion when attempting
> to turn SCSI off that you need to turn off USB.

may I propose the following two patches?

01_menu-Kconfig-cleanups-08-usb-menu-indent-fix.patch
Fix up indents in the USB Input menu

02_menu-Kconfig-cleanups-09-USB-vs-SCSI-fix.patch
Fix SCSI dependency for USB-Storage support.
- Rip out "select SCSI"
- Make a comment when SCSI is not selected

ciao, Marc


Attachments:
(No filename) (1.12 kB)
01_menu-Kconfig-cleanups-08-usb-menu-indent-fix.patch (2.07 kB)
02_menu-Kconfig-cleanups-09-USB-vs-SCSI-fix.patch (915.00 B)
Download all attachments

2004-04-06 11:12:08

by Marc-Christian Petersen

[permalink] [raw]
Subject: Re: 2.6.4: disabling SCSI support not possible

On Tuesday 06 April 2004 12:46, Marc-Christian Petersen wrote:

Hi again,

> 02_menu-Kconfig-cleanups-09-USB-vs-SCSI-fix.patch
> Fix SCSI dependency for USB-Storage support.
> - Rip out "select SCSI"
> - Make a comment when SCSI is not selected

grmpf, change !SCSI to SCSI=n. Again attached.

ciao, Marc


Attachments:
(No filename) (308.00 B)
02_menu-Kconfig-cleanups-09-USB-vs-SCSI-fix.patch (916.00 B)
Download all attachments