Use blkdev_get_by_dev instead of bdgrab + blkdev_get.

Signed-off-by: Christoph Hellwig <h...@lst.de>
---
 drivers/block/zram/zram_drv.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
index a356275605b104..91ccfe444525b4 100644
--- a/drivers/block/zram/zram_drv.c
+++ b/drivers/block/zram/zram_drv.c
@@ -491,9 +491,10 @@ static ssize_t backing_dev_store(struct device *dev,
                goto out;
        }
 
-       bdev = bdgrab(I_BDEV(inode));
-       err = blkdev_get(bdev, FMODE_READ | FMODE_WRITE | FMODE_EXCL, zram);
-       if (err < 0) {
+       bdev = blkdev_get_by_dev(inode->i_rdev,
+                       FMODE_READ | FMODE_WRITE | FMODE_EXCL, zram);
+       if (IS_ERR(bdev)) {
+               err = PTR_ERR(bdev);
                bdev = NULL;
                goto out;
        }
-- 
2.28.0

Reply via email to