[Devel] [PATCH hci-8.1 0/2] dm-qcow2, dm-ploop: do not merge discards with gaps
Andrey Zhadchenko
andrey.zhadchenko at virtuozzo.com
Mon Nov 9 18:36:17 MSK 2026
The block layer may merge non-contiguous discard bios into a single
request when the queue allows more than one discard segment, and the
stacking default for dm is max_discard_segments = USHRT_MAX.
Both dm-qcow2 and dm-ploop handle a discard request as one contiguous
range taken from blk_rq_pos() and blk_rq_bytes(). For a request built
from bios [0, 512) and [1024, 1536) they discard [0, 1024), which hits
sectors that were never asked to be discarded and misses part of the
range that was.
Set max_discard_segments to 1 in both targets so each discard request
always describes a single contiguous range.
https://virtuozzo.atlassian.net/browse/VSTOR-154159
Andrey Zhadchenko (2):
dm-qcow2: set max discard segments to one
dm-ploop: set max discard segments to one
drivers/md/dm-ploop-target.c | 1 +
drivers/md/dm-qcow2-target.c | 1 +
2 files changed, 2 insertions(+)
--
2.43.5
More information about the Devel
mailing list