|
@@ -172,9 +172,9 @@ static int mspro_block_complete_req(struct memstick_dev *card, int error);
|
|
|
|
|
|
/*** Block device ***/
|
|
|
|
|
|
-static int mspro_block_bd_open(struct inode *inode, struct file *filp)
|
|
|
+static int mspro_block_bd_open(struct block_device *bdev, fmode_t mode)
|
|
|
{
|
|
|
- struct gendisk *disk = inode->i_bdev->bd_disk;
|
|
|
+ struct gendisk *disk = bdev->bd_disk;
|
|
|
struct mspro_block_data *msb = disk->private_data;
|
|
|
int rc = -ENXIO;
|
|
|
|
|
@@ -182,7 +182,7 @@ static int mspro_block_bd_open(struct inode *inode, struct file *filp)
|
|
|
|
|
|
if (msb && msb->card) {
|
|
|
msb->usage_count++;
|
|
|
- if ((filp->f_mode & FMODE_WRITE) && msb->read_only)
|
|
|
+ if ((mode & FMODE_WRITE) && msb->read_only)
|
|
|
rc = -EROFS;
|
|
|
else
|
|
|
rc = 0;
|
|
@@ -218,9 +218,8 @@ static int mspro_block_disk_release(struct gendisk *disk)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-static int mspro_block_bd_release(struct inode *inode, struct file *filp)
|
|
|
+static int mspro_block_bd_release(struct gendisk *disk, fmode_t mode)
|
|
|
{
|
|
|
- struct gendisk *disk = inode->i_bdev->bd_disk;
|
|
|
return mspro_block_disk_release(disk);
|
|
|
}
|
|
|
|
|
@@ -237,8 +236,8 @@ static int mspro_block_bd_getgeo(struct block_device *bdev,
|
|
|
}
|
|
|
|
|
|
static struct block_device_operations ms_block_bdops = {
|
|
|
- .__open = mspro_block_bd_open,
|
|
|
- .__release = mspro_block_bd_release,
|
|
|
+ .open = mspro_block_bd_open,
|
|
|
+ .release = mspro_block_bd_release,
|
|
|
.getgeo = mspro_block_bd_getgeo,
|
|
|
.owner = THIS_MODULE
|
|
|
};
|