On 11/25/24 3:01 PM, Christoph Hellwig wrote: > On Mon, Nov 25, 2024 at 05:58:22AM +0000, 韦龙平(Groot) wrote: >>> What is ZWL? And why mention 6.6? And why do you care about ordering? >> ZWL is Zone-Write-Locking and it was replaced by Zone-Write-Plugging on 6.12. > > That's not a generally accepted acronym. But more importantly it's all > gone now, so completely irrelevant. > >> >>> There is no real ordering requirement in the block layer. >> According to the design constraints of zoned device, write requests in the same >> zone must be dispatched in order of address and there can be no holes in the middle > > Yes. But none of that matters at the device mapper layer. Either the > submitter needs to ensure ordering, or you must use zone append. 100% agree. But in this case, dm-crypt sees a single BIO which gets split when submitted to the underlying device. But the split issues the requests in reverse order, which breaks write ordering. So this seems like an issue with the block layer rather than dm-crypt. Though I do not understand why I have never seen this issue before, despite all the testing we do with all the zone block devices, dm and FS combinations we run every week (including f2fs). So I am not sure that the story is complete here... Never had to play with that dm max_io_len before to get things running correctly. -- Damien Le Moal Western Digital Research