Re: [PATCH] Fix: BK-Current doesn't compile w/o SCSI enabled

From: Jens Axboe (axboe@suse.de)
Date: Tue Oct 29 2002 - 09:32:19 EST


On Tue, Oct 29 2002, tytso@mit.edu wrote:
>
> BK current doesn't compile without SCSI being enabled, since
> sg_scsi_ioctl() in drivers/block/scsi_ioctl.c is always being compiled,
> regardless of whether or not SCSI is present (since some non-SCSI
> devices now use this infrastructure). Unfortunately, it makes reference
> to the COMMAND_SIZE() macro, which is defined in drivers/scsi/scsi.c,
> and that is NOT defined on non-SCSI build kernels.
>
> The simplest solution to this problem seems to be move scsi_command_size
> from drivers/scsi/scsi.c to drivers/block/scsi_ioctl.c, where it is used
> (and since it is always compiled in, this shouldn't break anything on
> SCSI systems).
>
> I'm a bit uneasy about the abstraction violation of moving the
> scsi_command_size array outside of the drivers/scsi tree, but that
> problem was introduced when the code in drivers/block/scsi_ioctl.c was
> moved out of the drivers/scsi tree, since drivers/block/scsi_ioctl.c
> already #includes ../scsi/scsi.h, so I haven't introduced a new layering
> violation.

I think the "violation" is ok, since the commandset they reference is
the same. So no problem there.

> Jens, do you agree this is the best way of fixing this issue? If so,
> please push this change to Linus. Thanks!!

I've already sent the very same patch to Linus earlier today,
bit-for-bit identical :-)

-- 
Jens Axboe

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Oct 31 2002 - 22:00:42 EST