All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Zoned block device code refactoring
@ 2025-11-10 22:29 Bart Van Assche
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
                   ` (3 more replies)
  0 siblings, 4 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-10 22:29 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block, Christoph Hellwig, Bart Van Assche

Hi Jens,

This series includes four small patches for the zoned block device code: a typo
is fixed, a lockdep annotation is added and the code is made slightly easier to
follow. Please consider these patches for the next merge window.

Thanks,

Bart.

Bart Van Assche (4):
  blk-zoned: Fix a typo in a source code comment
  blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking
  blk-zoned: Split an if-statement
  blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller

 block/blk-zoned.c | 41 ++++++++++++++++++-----------------------
 1 file changed, 18 insertions(+), 23 deletions(-)


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH 1/4] blk-zoned: Fix a typo in a source code comment
  2025-11-10 22:29 [PATCH 0/4] Zoned block device code refactoring Bart Van Assche
@ 2025-11-10 22:29 ` Bart Van Assche
  2025-11-11  1:49   ` Chaitanya Kulkarni
                     ` (2 more replies)
  2025-11-10 22:30 ` [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking Bart Van Assche
                   ` (2 subsequent siblings)
  3 siblings, 3 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-10 22:29 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Bart Van Assche, Damien Le Moal

Remove a superfluous parenthesis that was introduced by commit fa8555630b32
("blk-zoned: Improve the queue reference count strategy documentation").

Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 block/blk-zoned.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/blk-zoned.c b/block/blk-zoned.c
index 3791755bc6ad..57ab2b365c2d 100644
--- a/block/blk-zoned.c
+++ b/block/blk-zoned.c
@@ -730,7 +730,7 @@ static inline void blk_zone_wplug_bio_io_error(struct blk_zone_wplug *zwplug,
 	bio_clear_flag(bio, BIO_ZONE_WRITE_PLUGGING);
 	bio_io_error(bio);
 	disk_put_zone_wplug(zwplug);
-	/* Drop the reference taken by disk_zone_wplug_add_bio(() */
+	/* Drop the reference taken by disk_zone_wplug_add_bio(). */
 	blk_queue_exit(q);
 }
 

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking
  2025-11-10 22:29 [PATCH 0/4] Zoned block device code refactoring Bart Van Assche
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
@ 2025-11-10 22:30 ` Bart Van Assche
  2025-11-11  1:49   ` Chaitanya Kulkarni
  2025-11-11  7:07   ` Damien Le Moal
  2025-11-10 22:30 ` [PATCH 3/4] blk-zoned: Split an if-statement Bart Van Assche
  2025-11-10 22:30 ` [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller Bart Van Assche
  3 siblings, 2 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-10 22:30 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Bart Van Assche, Damien Le Moal

Document that all callers hold this lock because the code in
disk_zone_wplug_schedule_bio_work() depends on this.

Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 block/blk-zoned.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/block/blk-zoned.c b/block/blk-zoned.c
index 57ab2b365c2d..5487d5eb2650 100644
--- a/block/blk-zoned.c
+++ b/block/blk-zoned.c
@@ -1188,6 +1188,8 @@ void blk_zone_mgmt_bio_endio(struct bio *bio)
 static void disk_zone_wplug_schedule_bio_work(struct gendisk *disk,
 					      struct blk_zone_wplug *zwplug)
 {
+	lockdep_assert_held(&zwplug->lock);
+
 	/*
 	 * Take a reference on the zone write plug and schedule the submission
 	 * of the next plugged BIO. blk_zone_wplug_bio_work() will release the

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 3/4] blk-zoned: Split an if-statement
  2025-11-10 22:29 [PATCH 0/4] Zoned block device code refactoring Bart Van Assche
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
  2025-11-10 22:30 ` [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking Bart Van Assche
@ 2025-11-10 22:30 ` Bart Van Assche
  2025-11-11  1:50   ` Chaitanya Kulkarni
  2025-11-11  7:09   ` Damien Le Moal
  2025-11-10 22:30 ` [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller Bart Van Assche
  3 siblings, 2 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-10 22:30 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Bart Van Assche, Damien Le Moal

Split an if-statement and also the comment above that if-statement. This
patch makes the code slightly easier to read. No functionality has been
changed.

Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 block/blk-zoned.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/block/blk-zoned.c b/block/blk-zoned.c
index 5487d5eb2650..73c7358ec184 100644
--- a/block/blk-zoned.c
+++ b/block/blk-zoned.c
@@ -1461,13 +1461,14 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
 	bio_set_flag(bio, BIO_ZONE_WRITE_PLUGGING);
 
 	/*
-	 * If the zone is already plugged, add the BIO to the plug BIO list.
-	 * Do the same for REQ_NOWAIT BIOs to ensure that we will not see a
+	 * Add REQ_NOWAIT BIOs to the plug list to ensure that we will not see a
 	 * BLK_STS_AGAIN failure if we let the BIO execute.
-	 * Otherwise, plug and let the BIO execute.
 	 */
-	if ((zwplug->flags & BLK_ZONE_WPLUG_PLUGGED) ||
-	    (bio->bi_opf & REQ_NOWAIT))
+	if (bio->bi_opf & REQ_NOWAIT)
+		goto plug;
+
+	/* If the zone is already plugged, add the BIO to the BIO plug list. */
+	if (zwplug->flags & BLK_ZONE_WPLUG_PLUGGED)
 		goto plug;
 
 	if (!blk_zone_wplug_prepare_bio(zwplug, bio)) {
@@ -1476,6 +1477,7 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
 		return true;
 	}
 
+	/* Otherwise, plug and let the caller submit the BIO. */
 	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
 
 	spin_unlock_irqrestore(&zwplug->lock, flags);

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller
  2025-11-10 22:29 [PATCH 0/4] Zoned block device code refactoring Bart Van Assche
                   ` (2 preceding siblings ...)
  2025-11-10 22:30 ` [PATCH 3/4] blk-zoned: Split an if-statement Bart Van Assche
@ 2025-11-10 22:30 ` Bart Van Assche
  2025-11-11  7:16   ` Damien Le Moal
  2025-11-11  7:53   ` Christoph Hellwig
  3 siblings, 2 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-10 22:30 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Bart Van Assche, Damien Le Moal

Move the following code into the only caller of disk_zone_wplug_add_bio():
 - The code for clearing the REQ_NOWAIT flag.
 - The code that sets the BLK_ZONE_WPLUG_PLUGGED flag.
 - The disk_zone_wplug_schedule_bio_work() call.

This patch moves all code that is related to REQ_NOWAIT or to bio
scheduling into a single function. No functionality has been changed.

Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 block/blk-zoned.c | 27 +++++++++------------------
 1 file changed, 9 insertions(+), 18 deletions(-)

diff --git a/block/blk-zoned.c b/block/blk-zoned.c
index 73c7358ec184..bff953416ffc 100644
--- a/block/blk-zoned.c
+++ b/block/blk-zoned.c
@@ -1204,8 +1204,6 @@ static inline void disk_zone_wplug_add_bio(struct gendisk *disk,
 				struct blk_zone_wplug *zwplug,
 				struct bio *bio, unsigned int nr_segs)
 {
-	bool schedule_bio_work = false;
-
 	/*
 	 * Grab an extra reference on the BIO request queue usage counter.
 	 * This reference will be reused to submit a request for the BIO for
@@ -1221,16 +1219,6 @@ static inline void disk_zone_wplug_add_bio(struct gendisk *disk,
 	 */
 	bio_clear_polled(bio);
 
-	/*
-	 * REQ_NOWAIT BIOs are always handled using the zone write plug BIO
-	 * work, which can block. So clear the REQ_NOWAIT flag and schedule the
-	 * work if this is the first BIO we are plugging.
-	 */
-	if (bio->bi_opf & REQ_NOWAIT) {
-		schedule_bio_work = !(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED);
-		bio->bi_opf &= ~REQ_NOWAIT;
-	}
-
 	/*
 	 * Reuse the poll cookie field to store the number of segments when
 	 * split to the hardware limits.
@@ -1246,11 +1234,6 @@ static inline void disk_zone_wplug_add_bio(struct gendisk *disk,
 	bio_list_add(&zwplug->bio_list, bio);
 	trace_disk_zone_wplug_add_bio(zwplug->disk->queue, zwplug->zone_no,
 				      bio->bi_iter.bi_sector, bio_sectors(bio));
-
-	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
-
-	if (schedule_bio_work)
-		disk_zone_wplug_schedule_bio_work(disk, zwplug);
 }
 
 /*
@@ -1418,6 +1401,7 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
 {
 	struct gendisk *disk = bio->bi_bdev->bd_disk;
 	sector_t sector = bio->bi_iter.bi_sector;
+	bool schedule_bio_work = false;
 	struct blk_zone_wplug *zwplug;
 	gfp_t gfp_mask = GFP_NOIO;
 	unsigned long flags;
@@ -1464,8 +1448,10 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
 	 * Add REQ_NOWAIT BIOs to the plug list to ensure that we will not see a
 	 * BLK_STS_AGAIN failure if we let the BIO execute.
 	 */
-	if (bio->bi_opf & REQ_NOWAIT)
+	if (bio->bi_opf & REQ_NOWAIT) {
+		bio->bi_opf &= ~REQ_NOWAIT;
 		goto plug;
+	}
 
 	/* If the zone is already plugged, add the BIO to the BIO plug list. */
 	if (zwplug->flags & BLK_ZONE_WPLUG_PLUGGED)
@@ -1485,7 +1471,12 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
 	return false;
 
 plug:
+	schedule_bio_work = !(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED);
+	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
+
 	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
+	if (schedule_bio_work)
+		disk_zone_wplug_schedule_bio_work(disk, zwplug);
 
 	spin_unlock_irqrestore(&zwplug->lock, flags);
 

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/4] blk-zoned: Fix a typo in a source code comment
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
@ 2025-11-11  1:49   ` Chaitanya Kulkarni
  2025-11-11  7:06   ` Damien Le Moal
  2025-11-11  7:49   ` Christoph Hellwig
  2 siblings, 0 replies; 17+ messages in thread
From: Chaitanya Kulkarni @ 2025-11-11  1:49 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe
  Cc: linux-block@vger.kernel.org, Christoph Hellwig, Damien Le Moal

On 11/10/25 14:29, Bart Van Assche wrote:
> Remove a superfluous parenthesis that was introduced by commit fa8555630b32
> ("blk-zoned: Improve the queue reference count strategy documentation").
>
> Cc: Damien Le Moal<dlemoal@kernel.org>
> Cc: Christoph Hellwig<hch@lst.de>
> Signed-off-by: Bart Van Assche<bvanassche@acm.org>


Looks good.

Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>

-ck



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking
  2025-11-10 22:30 ` [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking Bart Van Assche
@ 2025-11-11  1:49   ` Chaitanya Kulkarni
  2025-11-11  7:07   ` Damien Le Moal
  1 sibling, 0 replies; 17+ messages in thread
From: Chaitanya Kulkarni @ 2025-11-11  1:49 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe
  Cc: linux-block@vger.kernel.org, Christoph Hellwig, Damien Le Moal

On 11/10/25 14:30, Bart Van Assche wrote:
> Document that all callers hold this lock because the code in
> disk_zone_wplug_schedule_bio_work() depends on this.
>
> Cc: Damien Le Moal<dlemoal@kernel.org>
> Cc: Christoph Hellwig<hch@lst.de>
> Signed-off-by: Bart Van Assche<bvanassche@acm.org>


Looks good.

Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>

-ck



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] blk-zoned: Split an if-statement
  2025-11-10 22:30 ` [PATCH 3/4] blk-zoned: Split an if-statement Bart Van Assche
@ 2025-11-11  1:50   ` Chaitanya Kulkarni
  2025-11-11  7:09   ` Damien Le Moal
  1 sibling, 0 replies; 17+ messages in thread
From: Chaitanya Kulkarni @ 2025-11-11  1:50 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe
  Cc: linux-block@vger.kernel.org, Christoph Hellwig, Damien Le Moal

On 11/10/25 14:30, Bart Van Assche wrote:
> Split an if-statement and also the comment above that if-statement. This
> patch makes the code slightly easier to read. No functionality has been
> changed.
>
> Cc: Damien Le Moal<dlemoal@kernel.org>
> Cc: Christoph Hellwig<hch@lst.de>
> Signed-off-by: Bart Van Assche<bvanassche@acm.org>


Looks good.

Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>

-ck



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/4] blk-zoned: Fix a typo in a source code comment
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
  2025-11-11  1:49   ` Chaitanya Kulkarni
@ 2025-11-11  7:06   ` Damien Le Moal
  2025-11-11  7:49   ` Christoph Hellwig
  2 siblings, 0 replies; 17+ messages in thread
From: Damien Le Moal @ 2025-11-11  7:06 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe; +Cc: linux-block, Christoph Hellwig

On 11/11/25 7:29 AM, Bart Van Assche wrote:
> Remove a superfluous parenthesis that was introduced by commit fa8555630b32
> ("blk-zoned: Improve the queue reference count strategy documentation").
> 
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>


-- 
Damien Le Moal
Western Digital Research

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking
  2025-11-10 22:30 ` [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking Bart Van Assche
  2025-11-11  1:49   ` Chaitanya Kulkarni
@ 2025-11-11  7:07   ` Damien Le Moal
  1 sibling, 0 replies; 17+ messages in thread
From: Damien Le Moal @ 2025-11-11  7:07 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe; +Cc: linux-block, Christoph Hellwig

On 11/11/25 7:30 AM, Bart Van Assche wrote:
> Document that all callers hold this lock because the code in
> disk_zone_wplug_schedule_bio_work() depends on this.
> 
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>

-- 
Damien Le Moal
Western Digital Research

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] blk-zoned: Split an if-statement
  2025-11-10 22:30 ` [PATCH 3/4] blk-zoned: Split an if-statement Bart Van Assche
  2025-11-11  1:50   ` Chaitanya Kulkarni
@ 2025-11-11  7:09   ` Damien Le Moal
  2025-11-11  7:50     ` Christoph Hellwig
  1 sibling, 1 reply; 17+ messages in thread
From: Damien Le Moal @ 2025-11-11  7:09 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe; +Cc: linux-block, Christoph Hellwig

On 11/11/25 7:30 AM, Bart Van Assche wrote:
> Split an if-statement and also the comment above that if-statement. This
> patch makes the code slightly easier to read. No functionality has been
> changed.
> 
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>

Though it feels like this should be squashed with patch 4/4.


-- 
Damien Le Moal
Western Digital Research

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller
  2025-11-10 22:30 ` [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller Bart Van Assche
@ 2025-11-11  7:16   ` Damien Le Moal
  2025-11-11  7:53   ` Christoph Hellwig
  1 sibling, 0 replies; 17+ messages in thread
From: Damien Le Moal @ 2025-11-11  7:16 UTC (permalink / raw)
  To: Bart Van Assche, Jens Axboe; +Cc: linux-block, Christoph Hellwig

On 11/11/25 7:30 AM, Bart Van Assche wrote:
> Move the following code into the only caller of disk_zone_wplug_add_bio():
>  - The code for clearing the REQ_NOWAIT flag.
>  - The code that sets the BLK_ZONE_WPLUG_PLUGGED flag.
>  - The disk_zone_wplug_schedule_bio_work() call.
> 
> This patch moves all code that is related to REQ_NOWAIT or to bio
> scheduling into a single function. No functionality has been changed.
> 
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>

[...]

> @@ -1464,8 +1448,10 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
>  	 * Add REQ_NOWAIT BIOs to the plug list to ensure that we will not see a
>  	 * BLK_STS_AGAIN failure if we let the BIO execute.
>  	 */
> -	if (bio->bi_opf & REQ_NOWAIT)
> +	if (bio->bi_opf & REQ_NOWAIT) {
> +		bio->bi_opf &= ~REQ_NOWAIT;
>  		goto plug;
> +	}
>  
>  	/* If the zone is already plugged, add the BIO to the BIO plug list. */
>  	if (zwplug->flags & BLK_ZONE_WPLUG_PLUGGED)

The goto in this if should be "goto add_bio;"

> @@ -1485,7 +1471,12 @@ static bool blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs)
>  	return false;
>  
>  plug:
> +	schedule_bio_work = !(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED);
> +	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
> +

And the label "add_bio" defined here. That would be cleaner I think.

>  	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
> +	if (schedule_bio_work)
> +		disk_zone_wplug_schedule_bio_work(disk, zwplug);
>  
>  	spin_unlock_irqrestore(&zwplug->lock, flags);
>  


-- 
Damien Le Moal
Western Digital Research

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/4] blk-zoned: Fix a typo in a source code comment
  2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
  2025-11-11  1:49   ` Chaitanya Kulkarni
  2025-11-11  7:06   ` Damien Le Moal
@ 2025-11-11  7:49   ` Christoph Hellwig
  2025-11-11 20:29     ` Bart Van Assche
  2 siblings, 1 reply; 17+ messages in thread
From: Christoph Hellwig @ 2025-11-11  7:49 UTC (permalink / raw)
  To: Bart Van Assche
  Cc: Jens Axboe, linux-block, Christoph Hellwig, Damien Le Moal

On Mon, Nov 10, 2025 at 02:29:59PM -0800, Bart Van Assche wrote:
> Remove a superfluous parenthesis that was introduced by commit fa8555630b32
> ("blk-zoned: Improve the queue reference count strategy documentation").

Or just drop the pointless parenthesis entirely?


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] blk-zoned: Split an if-statement
  2025-11-11  7:09   ` Damien Le Moal
@ 2025-11-11  7:50     ` Christoph Hellwig
  0 siblings, 0 replies; 17+ messages in thread
From: Christoph Hellwig @ 2025-11-11  7:50 UTC (permalink / raw)
  To: Damien Le Moal
  Cc: Bart Van Assche, Jens Axboe, linux-block, Christoph Hellwig

On Tue, Nov 11, 2025 at 04:09:10PM +0900, Damien Le Moal wrote:
> On 11/11/25 7:30 AM, Bart Van Assche wrote:
> > Split an if-statement and also the comment above that if-statement. This
> > patch makes the code slightly easier to read. No functionality has been
> > changed.
> > 
> > Cc: Damien Le Moal <dlemoal@kernel.org>
> > Cc: Christoph Hellwig <hch@lst.de>
> > Signed-off-by: Bart Van Assche <bvanassche@acm.org>
> 
> Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
> 
> Though it feels like this should be squashed with patch 4/4.

Yes, please.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller
  2025-11-10 22:30 ` [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller Bart Van Assche
  2025-11-11  7:16   ` Damien Le Moal
@ 2025-11-11  7:53   ` Christoph Hellwig
  2025-11-11 20:51     ` Bart Van Assche
  1 sibling, 1 reply; 17+ messages in thread
From: Christoph Hellwig @ 2025-11-11  7:53 UTC (permalink / raw)
  To: Bart Van Assche
  Cc: Jens Axboe, linux-block, Christoph Hellwig, Damien Le Moal

On Mon, Nov 10, 2025 at 02:30:02PM -0800, Bart Van Assche wrote:
>  plug:
> +	schedule_bio_work = !(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED);
> +	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
> +
>  	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
> +	if (schedule_bio_work)
> +		disk_zone_wplug_schedule_bio_work(disk, zwplug);

Given that the new disk_zone_wplug_add_bio does not touch
BLK_ZONE_WPLUG_PLUGGED, this reads odd.  Why not:

 	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
	if (!(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED)) {
		zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
		disk_zone_wplug_schedule_bio_work(disk, zwplug);
	}

and do away with the extra variable?

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/4] blk-zoned: Fix a typo in a source code comment
  2025-11-11  7:49   ` Christoph Hellwig
@ 2025-11-11 20:29     ` Bart Van Assche
  0 siblings, 0 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-11 20:29 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Jens Axboe, linux-block, Damien Le Moal

On 11/10/25 11:49 PM, Christoph Hellwig wrote:
> On Mon, Nov 10, 2025 at 02:29:59PM -0800, Bart Van Assche wrote:
>> Remove a superfluous parenthesis that was introduced by commit fa8555630b32
>> ("blk-zoned: Improve the queue reference count strategy documentation").
> 
> Or just drop the pointless parenthesis entirely?

Hi Christoph,

The parentheses make it clear that disk_zone_wplug_add_bio() is the name 
of a function and not the name of a variable.

Thanks,

Bart.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller
  2025-11-11  7:53   ` Christoph Hellwig
@ 2025-11-11 20:51     ` Bart Van Assche
  0 siblings, 0 replies; 17+ messages in thread
From: Bart Van Assche @ 2025-11-11 20:51 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Jens Axboe, linux-block, Damien Le Moal

On 11/10/25 11:53 PM, Christoph Hellwig wrote:
> On Mon, Nov 10, 2025 at 02:30:02PM -0800, Bart Van Assche wrote:
>>   plug:
>> +	schedule_bio_work = !(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED);
>> +	zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
>> +
>>   	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
>> +	if (schedule_bio_work)
>> +		disk_zone_wplug_schedule_bio_work(disk, zwplug);
> 
> Given that the new disk_zone_wplug_add_bio does not touch
> BLK_ZONE_WPLUG_PLUGGED, this reads odd.  Why not:
> 
>   	disk_zone_wplug_add_bio(disk, zwplug, bio, nr_segs);
> 	if (!(zwplug->flags & BLK_ZONE_WPLUG_PLUGGED)) {
> 		zwplug->flags |= BLK_ZONE_WPLUG_PLUGGED;
> 		disk_zone_wplug_schedule_bio_work(disk, zwplug);
> 	}
> 
> and do away with the extra variable?

That looks like an interesting suggestion to me. I will integrate the
above change in this patch series if it passes my tests.

Thanks,

Bart.

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2025-11-11 20:51 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-10 22:29 [PATCH 0/4] Zoned block device code refactoring Bart Van Assche
2025-11-10 22:29 ` [PATCH 1/4] blk-zoned: Fix a typo in a source code comment Bart Van Assche
2025-11-11  1:49   ` Chaitanya Kulkarni
2025-11-11  7:06   ` Damien Le Moal
2025-11-11  7:49   ` Christoph Hellwig
2025-11-11 20:29     ` Bart Van Assche
2025-11-10 22:30 ` [PATCH 2/4] blk-zoned: Document disk_zone_wplug_schedule_bio_work() locking Bart Van Assche
2025-11-11  1:49   ` Chaitanya Kulkarni
2025-11-11  7:07   ` Damien Le Moal
2025-11-10 22:30 ` [PATCH 3/4] blk-zoned: Split an if-statement Bart Van Assche
2025-11-11  1:50   ` Chaitanya Kulkarni
2025-11-11  7:09   ` Damien Le Moal
2025-11-11  7:50     ` Christoph Hellwig
2025-11-10 22:30 ` [PATCH 4/4] blk-zoned: Move code from disk_zone_wplug_add_bio() into its caller Bart Van Assche
2025-11-11  7:16   ` Damien Le Moal
2025-11-11  7:53   ` Christoph Hellwig
2025-11-11 20:51     ` Bart Van Assche

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.