Hi Xiao, Thanks for posting the patchset. I have been testing them over the past week, and they are looking good. I backported [0] the patchset to the Ubuntu 4.15, 5.4 and 5.8 kernels, and I have been testing them on public clouds. [0] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1896578/comments/13 For performance, formatting a Raid10 array on NVMe disks drops from 8.5 minutes to about 6 seconds [1], on AWS i3.8xlarge with 4x 1.7TB disks, due to the speedup in block discard. [1] https://paste.ubuntu.com/p/NNGqP3xdsc/ I have also tested the data corruption reproducer from my original problem report [2], and I have found that throughout each of the steps of formatting the array, doing a consistency check, writing data, doing a consistency check, issuing a fstrim, doing a consistency check, the /sys/block/md0/md/mismatch_cnt was always 0, and all deep fsck checks came back clean for individual disks [3]. [2] https://www.spinics.net/lists/kernel/msg3765302.html [3] https://paste.ubuntu.com/p/5DK57TzdFH/ So I think your patches do solve the data corruption problem. Great job. To try and get some more eyes on the patches, I have provided my test kernels to 5 other users who are hitting the Raid10 block discard performance problem, and I have asked them to test on spare test servers, and to provide feedback on performance and data safety. I will let you know their feedback as it comes in. As for getting this merged, I actually agree with Song, the 5.12 merge window is happening right now, and it is a bit too soon for large changes like this. I think we should wait for the 5.13 merge window. That way we can do some more testing, get feedback from some users, and make sure we don't cause any more data corruption regressions. I will write back soon with some user feedback and more test results. Thanks, Matthew