Hi Ming, I have tried your latest "workaround" patch in brd including the fix for large offsets, and it does appear to work. I tried the same tests and the data was written correctly for all offsets I tried. Thanks! I include the updated additional bpftrace below. > So firstly, I'd suggest to investigate from RDMA driver side to see why > un-aligned buffer is passed to block layer. > > According to previous discussion, 512 aligned buffer should be provided > to block layer. > > So looks the driver needs to be fixed. If it does appear to be an RDMA driver issue, do you know who we should follow up with directly from the RDMA driver side of the world? Presumably non-brd devices, ie: real scsi devices work for these test cases because they accept un-aligned buffers? > The patch might not cover the big offset case, could you collect bpftrace > via the following script when you reproduce the issue with >4096 offset? Here is the updated bpftrace output for an offset of 8192: 8192 76 4020 76 1 131056 4096 0 1 131063 76 0 1 131071 4096 0 4096 0 0 0 4096 0 4096 0 0 8 4096 0 4096 0 0 130944 8192 76 4020 76 1 131056 4096 0 1 131063 76 0 1 131071 4096 0 4096 0 0 130808 4096 0 4096 0 4096 0 0 131056 4096 0 0 131064 [snip] Thanks, Steve