summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Garry <john.g.garry@oracle.com>2025-01-09 14:40:00 +0300
committerJens Axboe <axboe@kernel.dk>2025-01-15 19:47:43 +0300
commit5d1f7ee7f0b6362c9148d500aeebe49b64b64df4 (patch)
treedb1cfa5dfa5d0aad602f768af04340557cd4a23e
parent6564862d646e7d630929ba1ff330740bb215bdac (diff)
downloadlinux-5d1f7ee7f0b6362c9148d500aeebe49b64b64df4.tar.xz
block: Change blk_stack_atomic_writes_limits() unit_min check
The current check in blk_stack_atomic_writes_limits() for a bottom device supporting atomic writes is to verify that limit atomic_write_unit_min is non-zero. This would cause a problem for device mapper queue limits calculation. This is because it uses a temporary queue_limits structure to stack the limits, before finally commiting the limits update. The value of atomic_write_unit_min for the temporary queue_limits structure is never evaluated and so cannot be used, so use limit atomic_write_hw_unit_min. Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: John Garry <john.g.garry@oracle.com> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Link: https://lore.kernel.org/r/20250109114000.2299896-3-john.g.garry@oracle.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--block/blk-settings.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/block/blk-settings.c b/block/blk-settings.c
index c2b99262db26..c8368ee8de2e 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -614,7 +614,7 @@ static void blk_stack_atomic_writes_limits(struct queue_limits *t,
if (!(t->features & BLK_FEAT_ATOMIC_WRITES_STACKED))
goto unsupported;
- if (!b->atomic_write_unit_min)
+ if (!b->atomic_write_hw_unit_min)
goto unsupported;
if (!blk_atomic_write_start_sect_aligned(start, b))