On 9/10/21 12:25 PM, Jens Axboe wrote: > Hi, > > Linus didn't particularly love the iov_iter->truncated addition and how > it was used, and it was hard to disagree with that. Instead of relying > on tracking ->truncated, add a few pieces of state so we can safely > handle partial or errored read/write attempts (that we want to retry). > > Then we can get rid of the iov_iter addition, and at the same time > handle cases that weren't handled correctly before. > > I've run this through vectored read/write with io_uring on the commonly > problematic cases (dm and low depth SCSI device) which trigger these > conditions often, and it seems to pass muster. > > For a discussion on this topic, see the thread here: > > https://lore.kernel.org/linux-fsdevel/CAHk-=wiacKV4Gh-MYjteU0LwNBSGpWrK-Ov25HdqB1ewinrFPg@xxxxxxxxxxxxxx/ > > You can find these patches here: > > https://git.kernel.dk/cgit/linux-block/log/?h=iov_iter Al, Linus, are you OK with this? I think we should get this in for 5.15. I didn't resend the whole series, just a v2 of patch 1/3 to fix that bvec vs iovec issue. Let me know if you want the while thing resent. -- Jens Axboe