OSDN Git Service

dm: remove the make_request_fn check in device_area_is_invalid
authorChristoph Hellwig <hch@lst.de>
Sat, 25 Apr 2020 07:53:35 +0000 (09:53 +0200)
committerJens Axboe <axboe@kernel.dk>
Sat, 25 Apr 2020 15:45:43 +0000 (09:45 -0600)
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/md/dm-table.c

index 0a2cc19..8277b95 100644 (file)
@@ -279,7 +279,6 @@ static struct dm_dev_internal *find_device(struct list_head *l, dev_t dev)
 static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev,
                                  sector_t start, sector_t len, void *data)
 {
-       struct request_queue *q;
        struct queue_limits *limits = data;
        struct block_device *bdev = dev->bdev;
        sector_t dev_size =
@@ -288,22 +287,6 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev,
                limits->logical_block_size >> SECTOR_SHIFT;
        char b[BDEVNAME_SIZE];
 
-       /*
-        * Some devices exist without request functions,
-        * such as loop devices not yet bound to backing files.
-        * Forbid the use of such devices.
-        */
-       q = bdev_get_queue(bdev);
-       if (!q || !q->make_request_fn) {
-               DMWARN("%s: %s is not yet initialised: "
-                      "start=%llu, len=%llu, dev_size=%llu",
-                      dm_device_name(ti->table->md), bdevname(bdev, b),
-                      (unsigned long long)start,
-                      (unsigned long long)len,
-                      (unsigned long long)dev_size);
-               return 1;
-       }
-
        if (!dev_size)
                return 0;