OSDN Git Service

block: remove bdev_stack_limits
authorChristoph Hellwig <hch@lst.de>
Mon, 20 Jul 2020 06:12:50 +0000 (08:12 +0200)
committerJens Axboe <axboe@kernel.dk>
Mon, 20 Jul 2020 21:38:52 +0000 (15:38 -0600)
This function is just a tiny wrapper around blk_stack_limit and has
two callers.  Simplify the stack a bit by open coding it in the two
callers.

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Damien Le Moal <damien.lemoal@wdc.com>
Tested-by: Damien Le Moal <damien.lemoal@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-settings.c
drivers/md/dm-table.c
include/linux/blkdev.h

index 9cddbd7..8c63af7 100644 (file)
@@ -615,28 +615,6 @@ int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
 EXPORT_SYMBOL(blk_stack_limits);
 
 /**
- * bdev_stack_limits - adjust queue limits for stacked drivers
- * @t: the stacking driver limits (top device)
- * @bdev:  the component block_device (bottom)
- * @start:  first data sector within component device
- *
- * Description:
- *    Merges queue limits for a top device and a block_device.  Returns
- *    0 if alignment didn't change.  Returns -1 if adding the bottom
- *    device caused misalignment.
- */
-int bdev_stack_limits(struct queue_limits *t, struct block_device *bdev,
-                     sector_t start)
-{
-       struct request_queue *bq = bdev_get_queue(bdev);
-
-       start += get_start_sect(bdev);
-
-       return blk_stack_limits(t, &bq->limits, start);
-}
-EXPORT_SYMBOL(bdev_stack_limits);
-
-/**
  * disk_stack_limits - adjust queue limits for stacked drivers
  * @disk:  MD/DM gendisk (top)
  * @bdev:  the underlying block device (bottom)
@@ -651,7 +629,8 @@ void disk_stack_limits(struct gendisk *disk, struct block_device *bdev,
 {
        struct request_queue *t = disk->queue;
 
-       if (bdev_stack_limits(&t->limits, bdev, offset >> 9) < 0) {
+       if (blk_stack_limits(&t->limits, &bdev_get_queue(bdev)->limits,
+                       get_start_sect(bdev) + (offset >> 9)) < 0) {
                char top[BDEVNAME_SIZE], bottom[BDEVNAME_SIZE];
 
                disk_name(disk, 0, top);
index ec53641..aac4c31 100644 (file)
@@ -458,7 +458,8 @@ static int dm_set_device_limits(struct dm_target *ti, struct dm_dev *dev,
                return 0;
        }
 
-       if (bdev_stack_limits(limits, bdev, start) < 0)
+       if (blk_stack_limits(limits, &q->limits,
+                       get_start_sect(bdev) + start) < 0)
                DMWARN("%s: adding target device %s caused an alignment inconsistency: "
                       "physical_block_size=%u, logical_block_size=%u, "
                       "alignment_offset=%u, start=%llu",
index 9e331a1..54b9631 100644 (file)
@@ -1139,8 +1139,6 @@ extern void blk_set_default_limits(struct queue_limits *lim);
 extern void blk_set_stacking_limits(struct queue_limits *lim);
 extern int blk_stack_limits(struct queue_limits *t, struct queue_limits *b,
                            sector_t offset);
-extern int bdev_stack_limits(struct queue_limits *t, struct block_device *bdev,
-                           sector_t offset);
 extern void disk_stack_limits(struct gendisk *disk, struct block_device *bdev,
                              sector_t offset);
 extern void blk_queue_stack_limits(struct request_queue *t, struct request_queue *b);