Use blkdev_get_by_dev instead of bdget_disk + blkdev_get.

Signed-off-by: Christoph Hellwig <h...@lst.de>
---
 drivers/s390/block/dasd_genhd.c | 13 +++----------
 1 file changed, 3 insertions(+), 10 deletions(-)

diff --git a/drivers/s390/block/dasd_genhd.c b/drivers/s390/block/dasd_genhd.c
index af5b0ecb8f8923..70c09a46d22806 100644
--- a/drivers/s390/block/dasd_genhd.c
+++ b/drivers/s390/block/dasd_genhd.c
@@ -101,18 +101,11 @@ int dasd_scan_partitions(struct dasd_block *block)
        struct block_device *bdev;
        int rc;
 
-       bdev = bdget_disk(block->gdp, 0);
-       if (!bdev) {
-               DBF_DEV_EVENT(DBF_ERR, block->base, "%s",
-                             "scan partitions error, bdget returned NULL");
-               return -ENODEV;
-       }
-
-       rc = blkdev_get(bdev, FMODE_READ, NULL);
-       if (rc < 0) {
+       bdev = blkdev_get_by_dev(disk_devt(block->gdp), FMODE_READ, NULL);
+       if (IS_ERR(bdev)) {
                DBF_DEV_EVENT(DBF_ERR, block->base,
                              "scan partitions error, blkdev_get returned %d",
-                             rc);
+                             IS_ERR(bdev));
                return -ENODEV;
        }
 
-- 
2.28.0

Reply via email to