1
0
Fork 0

[PATCH] switch viocd

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
hifive-unleashed-5.1
Al Viro 2008-03-02 10:25:44 -05:00
parent 8389feb4a8
commit 4e379ae6a6
1 changed files with 12 additions and 13 deletions

View File

@ -151,25 +151,24 @@ static const struct file_operations proc_viocd_operations = {
.release = single_release, .release = single_release,
}; };
static int viocd_blk_open(struct inode *inode, struct file *file) static int viocd_blk_open(struct block_device *bdev, fmode_t mode)
{ {
struct disk_info *di = inode->i_bdev->bd_disk->private_data; struct disk_info *di = bdev->bd_disk->private_data;
return cdrom_open(&di->viocd_info, inode->i_bdev, file->f_mode); return cdrom_open(&di->viocd_info, bdev, mode);
} }
static int viocd_blk_release(struct inode *inode, struct file *file) static int viocd_blk_release(struct gendisk *disk, fmode_t mode)
{ {
struct disk_info *di = inode->i_bdev->bd_disk->private_data; struct disk_info *di = disk->private_data;
cdrom_release(&di->viocd_info, file ? file->f_mode : 0); cdrom_release(&di->viocd_info, mode);
return 0; return 0;
} }
static int viocd_blk_ioctl(struct inode *inode, struct file *file, static int viocd_blk_ioctl(struct block_device *bdev, fmode_t mode,
unsigned cmd, unsigned long arg) unsigned cmd, unsigned long arg)
{ {
struct disk_info *di = inode->i_bdev->bd_disk->private_data; struct disk_info *di = bdev->bd_disk->private_data;
return cdrom_ioctl(&di->viocd_info, inode->i_bdev, return cdrom_ioctl(&di->viocd_info, bdev, mode, cmd, arg);
file ? file->f_mode : 0, cmd, arg);
} }
static int viocd_blk_media_changed(struct gendisk *disk) static int viocd_blk_media_changed(struct gendisk *disk)
@ -180,9 +179,9 @@ static int viocd_blk_media_changed(struct gendisk *disk)
struct block_device_operations viocd_fops = { struct block_device_operations viocd_fops = {
.owner = THIS_MODULE, .owner = THIS_MODULE,
.__open = viocd_blk_open, .open = viocd_blk_open,
.__release = viocd_blk_release, .release = viocd_blk_release,
.__ioctl = viocd_blk_ioctl, .locked_ioctl = viocd_blk_ioctl,
.media_changed = viocd_blk_media_changed, .media_changed = viocd_blk_media_changed,
}; };