diff options
| author | Shin'ichiro Kawasaki <[email protected]> | 2025-07-17 10:35:39 +0000 |
|---|---|---|
| committer | Jens Axboe <[email protected]> | 2025-07-17 12:03:03 +0000 |
| commit | 675f940576351bb049f5677615140b9d0a7712d0 (patch) | |
| tree | c543ff8405014eac250856ebccbeb45c01b403b7 /lib/crypto/mpi/mpi-add.c | |
| parent | block: use chunk_sectors when evaluating stacked atomic write limits (diff) | |
| download | kernel-675f940576351bb049f5677615140b9d0a7712d0.tar.gz kernel-675f940576351bb049f5677615140b9d0a7712d0.zip | |
dm: split write BIOs on zone boundaries when zone append is not emulated
Commit 2df7168717b7 ("dm: Always split write BIOs to zoned device
limits") updates the device-mapper driver to perform splits for the
write BIOs. However, it did not address the cases where DM targets do
not emulate zone append, such as in the cases of dm-linear or dm-flakey.
For these targets, when the write BIOs span across zone boundaries, they
trigger WARN_ON_ONCE(bio_straddles_zones(bio)) in
blk_zone_wplug_handle_write(). This results in I/O errors. The errors
are reproduced by running blktests test case zbd/004 using zoned
dm-linear or dm-flakey devices.
To avoid the I/O errors, handle the write BIOs regardless whether DM
targets emulate zone append or not, so that all write BIOs are split at
zone boundaries. For that purpose, drop the check for zone append
emulation in dm_zone_bio_needs_split(). Its argument 'md' is no longer
used then drop it also.
Fixes: 2df7168717b7 ("dm: Always split write BIOs to zoned device limits")
Signed-off-by: Shin'ichiro Kawasaki <[email protected]>
Reviewed-by: Damien Le Moal <[email protected]>
Reviewed-by: Mikulas Patocka <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'lib/crypto/mpi/mpi-add.c')
0 files changed, 0 insertions, 0 deletions
