[PATCH] switch ide-scsi

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2008-03-02 10:40:39 -05:00
parent 4e999af9b2
commit 3e3c9c6f3d
1 changed files with 9 additions and 15 deletions

View File

@ -452,40 +452,34 @@ static ide_driver_t idescsi_driver = {
#endif
};
static int idescsi_ide_open(struct inode *inode, struct file *filp)
static int idescsi_ide_open(struct block_device *bdev, fmode_t mode)
{
struct gendisk *disk = inode->i_bdev->bd_disk;
struct ide_scsi_obj *scsi;
struct ide_scsi_obj *scsi = ide_scsi_get(bdev->bd_disk);
if (!(scsi = ide_scsi_get(disk)))
if (!scsi)
return -ENXIO;
return 0;
}
static int idescsi_ide_release(struct inode *inode, struct file *filp)
static int idescsi_ide_release(struct gendisk *disk, fmode_t mode)
{
struct gendisk *disk = inode->i_bdev->bd_disk;
struct ide_scsi_obj *scsi = ide_scsi_g(disk);
ide_scsi_put(scsi);
ide_scsi_put(ide_scsi_g(disk));
return 0;
}
static int idescsi_ide_ioctl(struct inode *inode, struct file *file,
static int idescsi_ide_ioctl(struct block_device *bdev, fmode_t mode,
unsigned int cmd, unsigned long arg)
{
struct block_device *bdev = inode->i_bdev;
struct ide_scsi_obj *scsi = ide_scsi_g(bdev->bd_disk);
return generic_ide_ioctl(scsi->drive, bdev, cmd, arg);
}
static struct block_device_operations idescsi_ops = {
.owner = THIS_MODULE,
.__open = idescsi_ide_open,
.__release = idescsi_ide_release,
.__ioctl = idescsi_ide_ioctl,
.open = idescsi_ide_open,
.release = idescsi_ide_release,
.locked_ioctl = idescsi_ide_ioctl,
};
static int idescsi_slave_configure(struct scsi_device * sdp)