On 6/23/25 6:18 PM, Damien Le Moal wrote:
For a nicer solution, which is mostly DM-based, combine what I sent you to force write BIOs to be split early for zoned DM devices together with the patch [1], which I sent already but needs more work. This combination was tested by Shin'ichiro and he could not reproduce the hang with both patches applied. [1] https://lore.kernel.org/dm-devel/20250611011340.92226-1-dlemoal@xxxxxxxxxx/ As far as I can tell, dm-crypt is the only DM target driver supporting zones that splits write operations "under the hood". But I will check again.
Hi Damien, With both patches applied on top of Jens' for-next branch (2d5a3220c1f5 ("Merge branch 'block-6.16' into for-next"), I can't reproduce the deadlock anymore. This is unexpected because the deadlock happens between the queue freezing mechanism and zwplug->bio_list. No matter how bios are split, if bios are queued faster than these are processed, one or more bios end up on zwplug->bio_list and this deadlock can happen. Did I perhaps overlook or misunderstand something? Thanks, Bart.