[PATCH 5/5] sd: only call disk_clear_zoned when needed
Christoph Hellwig
hch at lst.de
Sun Dec 17 08:53:59 PST 2023
disk_clear_zoned only needs to be called when a device reported zone
managed mode first and we clear it. Add a check so that disk_clear_zoned
isn't called on devices that were never zoned.
This avoids a fairly expensive queue freezing when revalidating
conventional devices.
Signed-off-by: Christoph Hellwig <hch at lst.de>
---
drivers/scsi/sd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index dbed075cdb981a..8c8ac5cd1833b4 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -3149,7 +3149,7 @@ static void sd_read_block_characteristics(struct scsi_disk *sdkp)
* the device physical block size.
*/
blk_queue_zone_write_granularity(q, sdkp->physical_block_size);
- } else {
+ } else if (blk_queue_is_zoned(q)) {
/*
* Anything else. This includes host-aware device that we treat
* as conventional.
--
2.39.2
More information about the Linux-nvme
mailing list