Hi, This patchset has been staged in linux-next for the 6.4 merge window. The relevant linux-dm.git branch is here: https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/log/?h=dm-6.4 The initial patchset I posted earlier in the week for this line of work didn't properly split DM thin's discards. To be clear: both Joe and I missed this, and the issue impacted the patchset I posted _and_ code Joe had developed and tested to that point. device-mapper-test-suite's "discard_with_fstrim_passdown_true_ext4" test reliably reproduced the incorrect splitting. The issue was the DM thin target wasn't respecting the new restrictions imposed by dm bio-prison-v1 (which the DM thin target uses). Joe fixed this and the code reflects that in patch 9. All said, and as detailed in the "Testing" section of the header for patch 3: these changes have _now_ been extensively tested in terms of dm-thin (and dm-cache as much as device-mapper-test-suite provides). The cryptsetup testsuite also passes (DM integrity uses dm-bufio). PLEASE HELP with further testing of other more exotic DM bufio consumers and elaborate usecases (be it via Android, Chrome OS, etc). Please use whatever tests you have to put pressure on bufio. In particular: focused testing of bufio's shrinker, verify DM_BUFIO_CLIENT_NO_SLEEP (via dm-verity's tasklets), etc. There is still time to add fixes for 6.4 should any issues turn up. All review is welcome (I'll rebase to include Reviewed-by or Acked-by tags). Also, positive reports in the form of Tested-by replies are welcome! Thanks, Mike Joe Thornber (4): dm bufio: remove unused dm_bufio_release_move interface dm bufio: improve concurrent IO performance dm thin: speed up cell_defer_no_holder() dm bio prison v1: improve concurrent IO performance Mike Snitzer (3): dm bufio: move dm_buffer struct dm bufio: move dm_bufio_client members to avoid spanning cachelines dm: split discards further if target sets max_discard_granularity Mikulas Patocka (2): dm bufio: use waitqueue_active in __free_buffer_wake dm bufio: use multi-page bio vector drivers/md/dm-bio-prison-v1.c | 87 +- drivers/md/dm-bio-prison-v1.h | 10 + drivers/md/dm-bufio.c | 1970 ++++++++++++++++++++++----------- drivers/md/dm-thin.c | 110 +- drivers/md/dm.c | 25 +- include/linux/device-mapper.h | 6 + include/linux/dm-bufio.h | 6 - include/uapi/linux/dm-ioctl.h | 4 +- 8 files changed, 1509 insertions(+), 709 deletions(-) -- 2.40.0