Re: [PATCH] io_uring: fixup a few spots where link failure isn't flagged

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

 



On 11/6/19 11:44 AM, Pavel Begunkov wrote:
> On 06/11/2019 06:32, Jens Axboe wrote:
>> If a request fails, we need to ensure we set REQ_F_FAIL_LINK on it if
>> REQ_F_LINK is set. Any failure in the chain should break the chain.
>>
>> We were missing a few spots where this should be done. It might be nice
>> to generalize this somewhat at some point, as long as we factor in the
>> fact that failure looks different for each request type.
>>
> 
> The completion path also starts to get complicated, especially
> non-uniform handling of links there.
> 
> i.e. io_put_req() -> io_put_req_find_next() ->
> 	io_free_req() -> __io_free_req()
> Plus, io_free_req_many(), which can be used only in some cases.

The many case is just for polling, I actually think that one is pretty
clean and self explanatory. But I agree on the proliferation of them
otherwise, at least the patches today cleaned it up a little.
 
> My compiler didn't even inlined it, so there are 4 CALLs.
> Though, still in TODO list.

Huh, that's odd!

-- 
Jens Axboe




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux