2003-05-14 03:16:35

by Christopher Hoover

[permalink] [raw]
Subject: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems

Unless I'm missing something, there doesn't seem to be a good reason
for the block system to include SCSI ioctls unless there's a SCSI
block device (CONFIG_BLK_DEV_SD) in the system.

This is good for embedded systems with tight memory.

-ch

--
Christopher Hoover
mailto:ch(at)murgatroid.com
mailto:ch(at)hpl.hp.com


PATCH FOLLOWS
KernelVersion: 2.5.68

diff -Naur -X dontdiff.txt linux-2.5.68-rmk1/drivers/block/Makefile linux-2.5.68-rmk1-ceiva1/drivers/block/Makefile
--- linux-2.5.68-rmk1/drivers/block/Makefile 2003-05-06 11:53:42.000000000 -0700
+++ linux-2.5.68-rmk1-ceiva1/drivers/block/Makefile 2003-05-13 19:58:38.000000000 -0700
@@ -8,8 +8,9 @@
# In the future, some of these should be built conditionally.
#

-obj-y := elevator.o ll_rw_blk.o ioctl.o genhd.o scsi_ioctl.o deadline-iosched.o
+obj-y := elevator.o ll_rw_blk.o ioctl.o genhd.o deadline-iosched.o

+obj-$(CONFIG_BLK_DEV_SD) += scsi_ioctl.o
obj-$(CONFIG_MAC_FLOPPY) += swim3.o
obj-$(CONFIG_BLK_DEV_FD) += floppy.o
obj-$(CONFIG_BLK_DEV_FD98) += floppy98.o


2003-05-14 05:45:07

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems

On Tue, May 13, 2003 at 08:29:20PM -0700, Christopher Hoover wrote:
> Unless I'm missing something, there doesn't seem to be a good reason
> for the block system to include SCSI ioctls unless there's a SCSI
> block device (CONFIG_BLK_DEV_SD) in the system.

That's broken. You can use them on ide, sd and sr currently.

2003-05-14 05:53:20

by Christopher Hoover

[permalink] [raw]
Subject: RE: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems


> > Unless I'm missing something, there doesn't seem to be a good reason
> > for the block system to include SCSI ioctls unless there's a SCSI
> > block device (CONFIG_BLK_DEV_SD) in the system.
>
> That's broken. You can use them on ide, sd and sr currently.

Thanks for the G-2. I'll revise the patch ...

-ch

2003-05-14 07:57:23

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems

On Wed, May 14, 2003 at 01:08:02AM -0700, Christopher Hoover wrote:
> On Wed, May 14, 2003 at 06:57:52AM +0100, Christoph Hellwig wrote:
> > On Tue, May 13, 2003 at 08:29:20PM -0700, Christopher Hoover wrote:
> > > Unless I'm missing something, there doesn't seem to be a good reason
> > > for the block system to include SCSI ioctls unless there's a SCSI
> > > block device (CONFIG_BLK_DEV_SD) in the system.
> >
> > That's broken. You can use them on ide, sd and sr currently.
>
> OK, let's try that again.

Well, the idea of this code is that it is generic - I'd rather make it
a standalone config option and add stubs so driver still compile with it disabled.

2003-05-14 07:55:16

by Christopher Hoover

[permalink] [raw]
Subject: Re: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems

On Wed, May 14, 2003 at 06:57:52AM +0100, Christoph Hellwig wrote:
> On Tue, May 13, 2003 at 08:29:20PM -0700, Christopher Hoover wrote:
> > Unless I'm missing something, there doesn't seem to be a good reason
> > for the block system to include SCSI ioctls unless there's a SCSI
> > block device (CONFIG_BLK_DEV_SD) in the system.
>
> That's broken. You can use them on ide, sd and sr currently.

OK, let's try that again.


diff -X /home/ch/src/dontdiff.txt -Naurp linux-2.5.69.orig/drivers/block/Kconfig linux-2.5.69/drivers/block/Kconfig
--- linux-2.5.69.orig/drivers/block/Kconfig 2003-05-04 16:53:08.000000000 -0700
+++ linux-2.5.69/drivers/block/Kconfig 2003-05-14 00:58:36.000000000 -0700
@@ -348,3 +348,6 @@ config LBD

endmenu

+config SCSI_IOCTL
+ bool
+ default y if IDE||SCSI
diff -X /home/ch/src/dontdiff.txt -Naurp linux-2.5.69.orig/drivers/block/Makefile linux-2.5.69/drivers/block/Makefile
--- linux-2.5.69.orig/drivers/block/Makefile 2003-05-04 16:53:37.000000000 -0700
+++ linux-2.5.69/drivers/block/Makefile 2003-05-14 00:58:50.000000000 -0700
@@ -8,7 +8,9 @@
# In the future, some of these should be built conditionally.
#

-obj-y := elevator.o ll_rw_blk.o ioctl.o genhd.o scsi_ioctl.o deadline-iosched.o
+obj-y := elevator.o ll_rw_blk.o ioctl.o genhd.o deadline-iosched.o
+
+obj-$(CONFIG_SCSI_IOCTL) += scsi_ioctl.o

obj-$(CONFIG_MAC_FLOPPY) += swim3.o
obj-$(CONFIG_BLK_DEV_FD) += floppy.o

2003-05-14 08:00:04

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.5.68: Don't include SCSI block ioctls on non-scsi systems

On Wed, May 14 2003, Christopher Hoover wrote:
> On Wed, May 14, 2003 at 06:57:52AM +0100, Christoph Hellwig wrote:
> > On Tue, May 13, 2003 at 08:29:20PM -0700, Christopher Hoover wrote:
> > > Unless I'm missing something, there doesn't seem to be a good reason
> > > for the block system to include SCSI ioctls unless there's a SCSI
> > > block device (CONFIG_BLK_DEV_SD) in the system.
> >
> > That's broken. You can use them on ide, sd and sr currently.
>
> OK, let's try that again.

That's better, but block/scsi_ioctl.c is potentially useful on non ide
or scsi systems too.

I agree with the config option, though.

--
Jens Axboe