]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/ide/ide-cd.c
[PATCH] switch cdrom_{open,release,ioctl} to sane APIs
[linux-2.6-omap-h63xx.git] / drivers / ide / ide-cd.c
index 13265a8827da9b7cfa15d209c46634ec6a939486..87d90200b16997d4d1448f01cf9859dd28141aa6 100644 (file)
@@ -2099,7 +2099,7 @@ static int idecd_open(struct inode *inode, struct file *file)
        if (!info)
                return -ENXIO;
 
-       rc = cdrom_open(&info->devinfo, inode, file);
+       rc = cdrom_open(&info->devinfo, inode->i_bdev, file->f_mode);
 
        if (rc < 0)
                ide_cd_put(info);
@@ -2112,7 +2112,7 @@ static int idecd_release(struct inode *inode, struct file *file)
        struct gendisk *disk = inode->i_bdev->bd_disk;
        struct cdrom_info *info = ide_drv_g(disk, cdrom_info);
 
-       cdrom_release(&info->devinfo, file);
+       cdrom_release(&info->devinfo, file ? file->f_mode : 0);
 
        ide_cd_put(info);
 
@@ -2174,9 +2174,10 @@ static int idecd_ioctl(struct inode *inode, struct file *file,
                break;
        }
 
-       err = generic_ide_ioctl(info->drive, file, bdev, cmd, arg);
+       err = generic_ide_ioctl(info->drive, bdev, cmd, arg);
        if (err == -EINVAL)
-               err = cdrom_ioctl(file, &info->devinfo, inode, cmd, arg);
+               err = cdrom_ioctl(&info->devinfo, bdev,
+                                 file ? file->f_mode : 0, cmd, arg);
 
        return err;
 }