diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2007-07-09 06:39:20 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2007-07-16 02:52:45 -0400 |
commit | 45e79a3acdcf54113b3d7b23e9e64e6541dbfeb5 (patch) | |
tree | b8e7598b26ce446577e162189e635f6b87b10a5b /drivers/cdrom/cdrom.c | |
parent | 7e75d73080d822d2bbbd5b0f7f293719dd1f9109 (diff) |
bsg: add a request_queue argument to scsi_cmd_ioctl()
bsg uses scsi_cmd_ioctl() for some SCSI/sg ioctl
commands. scsi_cmd_ioctl() gets a request queue from a gendisk
arguement. This prevents bsg being bound to SCSI devices that don't
have a gendisk (like OSD). This adds a request_queue argument to
scsi_cmd_ioctl(). The SCSI/sg ioctl commands doesn't use a gendisk so
it's safe for any SCSI devices to use scsi_cmd_ioctl().
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'drivers/cdrom/cdrom.c')
-rw-r--r-- | drivers/cdrom/cdrom.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index aa5468f487ba..499019bf8f40 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c | |||
@@ -2695,11 +2695,12 @@ int cdrom_ioctl(struct file * file, struct cdrom_device_info *cdi, | |||
2695 | { | 2695 | { |
2696 | void __user *argp = (void __user *)arg; | 2696 | void __user *argp = (void __user *)arg; |
2697 | int ret; | 2697 | int ret; |
2698 | struct gendisk *disk = ip->i_bdev->bd_disk; | ||
2698 | 2699 | ||
2699 | /* | 2700 | /* |
2700 | * Try the generic SCSI command ioctl's first. | 2701 | * Try the generic SCSI command ioctl's first. |
2701 | */ | 2702 | */ |
2702 | ret = scsi_cmd_ioctl(file, ip->i_bdev->bd_disk, cmd, argp); | 2703 | ret = scsi_cmd_ioctl(file, disk->queue, disk, cmd, argp); |
2703 | if (ret != -ENOTTY) | 2704 | if (ret != -ENOTTY) |
2704 | return ret; | 2705 | return ret; |
2705 | 2706 | ||