block: cleanup blkdev_bszset
Use blkdev_get_by_dev instead of bdgrab + blkdev_get. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
9301fe7343
commit
478162821d
|
@ -478,15 +478,14 @@ static int blkdev_bszset(struct block_device *bdev, fmode_t mode,
|
||||||
if (get_user(n, argp))
|
if (get_user(n, argp))
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
|
||||||
if (!(mode & FMODE_EXCL)) {
|
if (mode & FMODE_EXCL)
|
||||||
bdgrab(bdev);
|
return set_blocksize(bdev, n);
|
||||||
if (blkdev_get(bdev, mode | FMODE_EXCL, &bdev) < 0)
|
|
||||||
return -EBUSY;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if (IS_ERR(blkdev_get_by_dev(bdev->bd_dev, mode | FMODE_EXCL, &bdev)))
|
||||||
|
return -EBUSY;
|
||||||
ret = set_blocksize(bdev, n);
|
ret = set_blocksize(bdev, n);
|
||||||
if (!(mode & FMODE_EXCL))
|
blkdev_put(bdev, mode | FMODE_EXCL);
|
||||||
blkdev_put(bdev, mode | FMODE_EXCL);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue