From: Pankaj Raghav <p.raghav@samsung.com> To: snitzer@kernel.org, axboe@kernel.dk, agk@redhat.com, hch@lst.de, damien.lemoal@opensource.wdc.com Cc: jaegeuk@kernel.org, gost.dev@samsung.com, bvanassche@acm.org, linux-kernel@vger.kernel.org, hare@suse.de, matias.bjorling@wdc.com, Johannes.Thumshirn@wdc.com, linux-block@vger.kernel.org, linux-nvme@lists.infradead.org, pankydev8@gmail.com, dm-devel@redhat.com, Pankaj Raghav <p.raghav@samsung.com>, Chaitanya Kulkarni <kch@nvidia.com>, Johannes Thumshirn <johannes.thumshirn@wdc.com> Subject: [PATCH v15 02/13] block: rearrange bdev_{is_zoned,zone_sectors,get_queue} helper in blkdev.h Date: Fri, 23 Sep 2022 19:36:07 +0200 [thread overview] Message-ID: <20220923173618.6899-3-p.raghav@samsung.com> (raw) In-Reply-To: <20220923173618.6899-1-p.raghav@samsung.com> Define bdev_is_zoned(), bdev_zone_sectors() and bdev_get_queue() earlier in the blkdev.h include file. Simplify bdev_is_zoned() by removing the superfluous NULL check for request queue while we are at it. This commit has no functional change, and it is a prep patch for allowing zoned devices with non-power-of-2 zone sizes in the block layer. Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> --- include/linux/blkdev.h | 43 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 6c6bf4dd5709..6cf43f9384cc 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -635,6 +635,11 @@ static inline bool queue_is_mq(struct request_queue *q) return q->mq_ops; } +static inline struct request_queue *bdev_get_queue(struct block_device *bdev) +{ + return bdev->bd_queue; /* this is never NULL */ +} + #ifdef CONFIG_PM static inline enum rpm_status queue_rpm_status(struct request_queue *q) { @@ -666,6 +671,20 @@ static inline bool blk_queue_is_zoned(struct request_queue *q) } } +static inline bool bdev_is_zoned(struct block_device *bdev) +{ + return blk_queue_is_zoned(bdev_get_queue(bdev)); +} + +static inline sector_t bdev_zone_sectors(struct block_device *bdev) +{ + struct request_queue *q = bdev_get_queue(bdev); + + if (!blk_queue_is_zoned(q)) + return 0; + return q->limits.chunk_sectors; +} + #ifdef CONFIG_BLK_DEV_ZONED static inline unsigned int disk_nr_zones(struct gendisk *disk) { @@ -892,11 +911,6 @@ int bio_poll(struct bio *bio, struct io_comp_batch *iob, unsigned int flags); int iocb_bio_iopoll(struct kiocb *kiocb, struct io_comp_batch *iob, unsigned int flags); -static inline struct request_queue *bdev_get_queue(struct block_device *bdev) -{ - return bdev->bd_queue; /* this is never NULL */ -} - /* Helper to convert BLK_ZONE_ZONE_XXX to its string format XXX */ const char *blk_zone_cond_str(enum blk_zone_cond zone_cond); @@ -1296,25 +1310,6 @@ static inline enum blk_zoned_model bdev_zoned_model(struct block_device *bdev) return BLK_ZONED_NONE; } -static inline bool bdev_is_zoned(struct block_device *bdev) -{ - struct request_queue *q = bdev_get_queue(bdev); - - if (q) - return blk_queue_is_zoned(q); - - return false; -} - -static inline sector_t bdev_zone_sectors(struct block_device *bdev) -{ - struct request_queue *q = bdev_get_queue(bdev); - - if (!blk_queue_is_zoned(q)) - return 0; - return q->limits.chunk_sectors; -} - static inline int queue_dma_alignment(const struct request_queue *q) { return q ? q->dma_alignment : 511; -- 2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Pankaj Raghav <p.raghav@samsung.com> To: snitzer@kernel.org, axboe@kernel.dk, agk@redhat.com, hch@lst.de, damien.lemoal@opensource.wdc.com Cc: Pankaj Raghav <p.raghav@samsung.com>, Chaitanya Kulkarni <kch@nvidia.com>, bvanassche@acm.org, pankydev8@gmail.com, gost.dev@samsung.com, linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org, linux-block@vger.kernel.org, dm-devel@redhat.com, Johannes Thumshirn <johannes.thumshirn@wdc.com>, jaegeuk@kernel.org, matias.bjorling@wdc.com Subject: [dm-devel] [PATCH v15 02/13] block: rearrange bdev_{is_zoned, zone_sectors, get_queue} helper in blkdev.h Date: Fri, 23 Sep 2022 19:36:07 +0200 [thread overview] Message-ID: <20220923173618.6899-3-p.raghav@samsung.com> (raw) In-Reply-To: <20220923173618.6899-1-p.raghav@samsung.com> Define bdev_is_zoned(), bdev_zone_sectors() and bdev_get_queue() earlier in the blkdev.h include file. Simplify bdev_is_zoned() by removing the superfluous NULL check for request queue while we are at it. This commit has no functional change, and it is a prep patch for allowing zoned devices with non-power-of-2 zone sizes in the block layer. Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com> --- include/linux/blkdev.h | 43 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 6c6bf4dd5709..6cf43f9384cc 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -635,6 +635,11 @@ static inline bool queue_is_mq(struct request_queue *q) return q->mq_ops; } +static inline struct request_queue *bdev_get_queue(struct block_device *bdev) +{ + return bdev->bd_queue; /* this is never NULL */ +} + #ifdef CONFIG_PM static inline enum rpm_status queue_rpm_status(struct request_queue *q) { @@ -666,6 +671,20 @@ static inline bool blk_queue_is_zoned(struct request_queue *q) } } +static inline bool bdev_is_zoned(struct block_device *bdev) +{ + return blk_queue_is_zoned(bdev_get_queue(bdev)); +} + +static inline sector_t bdev_zone_sectors(struct block_device *bdev) +{ + struct request_queue *q = bdev_get_queue(bdev); + + if (!blk_queue_is_zoned(q)) + return 0; + return q->limits.chunk_sectors; +} + #ifdef CONFIG_BLK_DEV_ZONED static inline unsigned int disk_nr_zones(struct gendisk *disk) { @@ -892,11 +911,6 @@ int bio_poll(struct bio *bio, struct io_comp_batch *iob, unsigned int flags); int iocb_bio_iopoll(struct kiocb *kiocb, struct io_comp_batch *iob, unsigned int flags); -static inline struct request_queue *bdev_get_queue(struct block_device *bdev) -{ - return bdev->bd_queue; /* this is never NULL */ -} - /* Helper to convert BLK_ZONE_ZONE_XXX to its string format XXX */ const char *blk_zone_cond_str(enum blk_zone_cond zone_cond); @@ -1296,25 +1310,6 @@ static inline enum blk_zoned_model bdev_zoned_model(struct block_device *bdev) return BLK_ZONED_NONE; } -static inline bool bdev_is_zoned(struct block_device *bdev) -{ - struct request_queue *q = bdev_get_queue(bdev); - - if (q) - return blk_queue_is_zoned(q); - - return false; -} - -static inline sector_t bdev_zone_sectors(struct block_device *bdev) -{ - struct request_queue *q = bdev_get_queue(bdev); - - if (!blk_queue_is_zoned(q)) - return 0; - return q->limits.chunk_sectors; -} - static inline int queue_dma_alignment(const struct request_queue *q) { return q ? q->dma_alignment : 511; -- 2.25.1 -- dm-devel mailing list dm-devel@redhat.com https://listman.redhat.com/mailman/listinfo/dm-devel
next prev parent reply other threads:[~2022-09-23 17:36 UTC|newest] Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <CGME20220923173619eucas1p13e645adbe1c8eb62fb48b52c0248ed65@eucas1p1.samsung.com> 2022-09-23 17:36 ` [PATCH v15 00/13] support zoned block devices with non-power-of-2 zone sizes Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173620eucas1p2ba21805261fe5ad86c38c0f52daeaa3a@eucas1p2.samsung.com> 2022-09-23 17:36 ` [PATCH v15 01/13] block: make bdev_nr_zones and disk_zone_no generic for npo2 zone size Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173621eucas1p11d1d89e187b39e057c7dfb58756c6a2e@eucas1p1.samsung.com> 2022-09-23 17:36 ` Pankaj Raghav [this message] 2022-09-23 17:36 ` [dm-devel] [PATCH v15 02/13] block: rearrange bdev_{is_zoned, zone_sectors, get_queue} helper in blkdev.h Pankaj Raghav [not found] ` <CGME20220923173623eucas1p2aeb5444a1005282b630706d60e18a5ba@eucas1p2.samsung.com> 2022-09-23 17:36 ` [PATCH v15 03/13] block: allow blk-zoned devices to have non-power-of-2 zone size Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173624eucas1p19e66d02c7f4dfd2da262b783ef440156@eucas1p1.samsung.com> 2022-09-23 17:36 ` [PATCH v15 04/13] nvmet: Allow ZNS target to support non-power_of_2 zone sizes Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173625eucas1p147864849427469a90bf5c3ce547105c2@eucas1p1.samsung.com> 2022-09-23 17:36 ` [PATCH v15 05/13] nvme: zns: Allow ZNS drives that have non-power_of_2 zone size Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173626eucas1p2e06c400ad3c18fe8f33c0b4ab1a25bf0@eucas1p2.samsung.com> 2022-09-23 17:36 ` [PATCH v15 06/13] null_blk: allow zoned devices with non power-of-2 zone sizes Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav [not found] ` <CGME20220923173627eucas1p2f134d9cb331e4a8f0fca8431eeb0f0b0@eucas1p2.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 07/13] zonefs: allow non power of 2 zoned devices Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav 2022-09-28 18:10 ` Bart Van Assche 2022-09-28 18:10 ` [dm-devel] " Bart Van Assche [not found] ` <CGME20220923173628eucas1p1837557826439e7cd6690b46628290037@eucas1p1.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 08/13] dm-zoned: ensure only power of 2 zone sizes are allowed Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav [not found] ` <CGME20220923173629eucas1p27c1ebffb55c2f1a52fad913840b16d02@eucas1p2.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 09/13] dm-zone: use generic helpers to calculate offset from zone start Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav [not found] ` <CGME20220923173630eucas1p2bae6918f0c165051464e62c5172a80e0@eucas1p2.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 10/13] dm-table: allow zoned devices with non power-of-2 zone sizes Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav [not found] ` <CGME20220923173631eucas1p23cceb8438d6b8b9c3460192c0ad2472d@eucas1p2.samsung.com> 2022-09-23 17:36 ` [PATCH v15 11/13] dm: call dm_zone_endio after the target endio callback for zoned devices Pankaj Raghav 2022-09-23 17:36 ` [dm-devel] " Pankaj Raghav 2022-09-28 18:13 ` Bart Van Assche 2022-09-28 18:13 ` [dm-devel] " Bart Van Assche [not found] ` <CGME20220923173632eucas1p1a4b8cba427f5caf649009073233f8c76@eucas1p1.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 12/13] dm: introduce DM_EMULATED_ZONES target feature flag Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav [not found] ` <CGME20220923173634eucas1p18fccee11155c670354da389b4d2f4c60@eucas1p1.samsung.com> 2022-09-23 17:36 ` [dm-devel] [PATCH v15 13/13] dm: add power-of-2 target for zoned devices with non power-of-2 zone sizes Pankaj Raghav 2022-09-23 17:36 ` Pankaj Raghav 2022-09-27 16:07 ` Pankaj Raghav 2022-09-27 16:07 ` [dm-devel] " Pankaj Raghav 2022-09-28 14:22 ` Mike Snitzer 2022-09-28 14:22 ` [dm-devel] " Mike Snitzer 2022-09-29 6:31 ` [PATCH v15 00/13] support zoned block devices with non-power-of-2 " Pankaj Raghav 2022-09-29 6:31 ` [dm-devel] " Pankaj Raghav 2022-09-30 15:13 ` Jens Axboe 2022-09-30 15:13 ` [dm-devel] " Jens Axboe 2022-09-30 19:38 ` Bart Van Assche 2022-09-30 19:38 ` [dm-devel] " Bart Van Assche 2022-09-30 21:24 ` Jens Axboe 2022-09-30 21:24 ` [dm-devel] " Jens Axboe 2022-10-24 19:02 ` Bart Van Assche 2022-10-24 19:02 ` [dm-devel] " Bart Van Assche 2022-10-01 0:45 ` Damien Le Moal 2022-10-01 0:45 ` [dm-devel] " Damien Le Moal 2022-10-01 2:14 ` Bart Van Assche 2022-10-01 2:14 ` [dm-devel] " Bart Van Assche 2023-01-04 5:29 ` Can Guo
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220923173618.6899-3-p.raghav@samsung.com \ --to=p.raghav@samsung.com \ --cc=Johannes.Thumshirn@wdc.com \ --cc=agk@redhat.com \ --cc=axboe@kernel.dk \ --cc=bvanassche@acm.org \ --cc=damien.lemoal@opensource.wdc.com \ --cc=dm-devel@redhat.com \ --cc=gost.dev@samsung.com \ --cc=hare@suse.de \ --cc=hch@lst.de \ --cc=jaegeuk@kernel.org \ --cc=kch@nvidia.com \ --cc=linux-block@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvme@lists.infradead.org \ --cc=matias.bjorling@wdc.com \ --cc=pankydev8@gmail.com \ --cc=snitzer@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.