Re: [GIT PULL] iov_iter retry fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/17/21 8:49 AM, Al Viro wrote:
> On Fri, Sep 17, 2021 at 08:44:32AM -0600, Jens Axboe wrote:
>> Hi Linus,
>>
>> This adds a helper to save/restore iov_iter state, and modifies io_uring
>> to use it. After that is done, we can kill the iter->truncated addition
>> that we added for this release. The io_uring change is being overly
>> cautious with the save/restore/advance, but better safe than sorry and
>> we can always improve that and reduce the overhead if it proves to be of
>> concern. The only case to be worried about in this regard is huge IO,
>> where iteration can take a while to iterate segments.
>>
>> I spent some time writing test cases, and expanded the coverage quite a
>> bit from the last posting of this. liburing carries this regression test
>> case now:
>>
>> https://git.kernel.dk/cgit/liburing/tree/test/file-verify.c
>>
>> which exercises all of this. It now also supports provided buffers, and
>> explicitly tests for end-of-file/device truncation as well.
>>
>> On top of that, Pavel sanitized the IOPOLL retry path to follow the
>> exact same pattern as normal IO.
> 
> I can live with that; I do have problems with io-uring and its interactions
> with iov_iter, but those are mostly independent from the stuff you are
> doing here.

I actually think we can end up cleaning up some of those bits post this,
it'll definitely make it easier by having clean save/restore states.

-- 
Jens Axboe




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux