diff mbox series

[2/3] block: remove bdev_stack_limits

Message ID 20200720061251.652457-3-hch@lst.de (mailing list archive)
State New, archived
Headers show
Series [1/3] block: inherit the zoned characteristics in blk_stack_limits | expand

Commit Message

Christoph Hellwig July 20, 2020, 6:12 a.m. UTC
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.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
 block/blk-settings.c   | 25 ++-----------------------
 drivers/md/dm-table.c  |  3 ++-
 include/linux/blkdev.h |  2 --
 3 files changed, 4 insertions(+), 26 deletions(-)

Comments

Damien Le Moal July 20, 2020, 8:11 a.m. UTC | #1
On 2020/07/20 15:13, Christoph Hellwig wrote:
> 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.
> 
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
>  block/blk-settings.c   | 25 ++-----------------------
>  drivers/md/dm-table.c  |  3 ++-
>  include/linux/blkdev.h |  2 --
>  3 files changed, 4 insertions(+), 26 deletions(-)
> 
> diff --git a/block/blk-settings.c b/block/blk-settings.c
> index 9cddbd73647405..8c63af7726850c 100644
> --- a/block/blk-settings.c
> +++ b/block/blk-settings.c
> @@ -614,28 +614,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)
> @@ -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);
> diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
> index ec5364133cef7f..aac4c31cfc8498 100644
> --- a/drivers/md/dm-table.c
> +++ b/drivers/md/dm-table.c
> @@ -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",
> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
> index 67b9ccc1da3560..247b0e0a2901f0 100644
> --- a/include/linux/blkdev.h
> +++ b/include/linux/blkdev.h
> @@ -1106,8 +1106,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);
> 

Looks good.

Reviewed-by: Damien Le Moal <damien.lemoal@wdc.com>
Johannes Thumshirn July 20, 2020, 8:15 a.m. UTC | #2
Looks good,
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
diff mbox series

Patch

diff --git a/block/blk-settings.c b/block/blk-settings.c
index 9cddbd73647405..8c63af7726850c 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -614,28 +614,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)
@@ -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);
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index ec5364133cef7f..aac4c31cfc8498 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -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",
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 67b9ccc1da3560..247b0e0a2901f0 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -1106,8 +1106,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);