Re: [PATCH v2] io_uring: do the sqpoll napi busy poll outside the submission block

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

 



On 8/12/24 3:50 PM, Olivier Langlois wrote:
> On Mon, 2024-08-12 at 14:31 -0600, Jens Axboe wrote:
>> On 7/30/24 3:10 PM, Olivier Langlois wrote:
>>> diff --git a/io_uring/napi.h b/io_uring/napi.h
>>> index 88f1c21d5548..5506c6af1ff5 100644
>>> --- a/io_uring/napi.h
>>> +++ b/io_uring/napi.h
>>> @@ -101,4 +101,13 @@ static inline int
>>> io_napi_sqpoll_busy_poll(struct io_ring_ctx *ctx)
>>>  }
>>>  #endif /* CONFIG_NET_RX_BUSY_POLL */
>>>  
>>> +static inline int io_do_sqpoll_napi(struct io_ring_ctx *ctx)
>>> +{
>>> +	int ret = 0;
>>> +
>>> +	if (io_napi(ctx))
>>> +		ret = io_napi_sqpoll_busy_poll(ctx);
>>> +	return ret;
>>> +}
>>> +
>>
>> static inline int io_do_sqpoll_napi(struct io_ring_ctx *ctx)
>> {
>> 	if (io_napi(ctx))
>> 		return io_napi_sqpoll_busy_poll(ctx);
>> 	return 0;
>> }
>>
>> is a less convoluted way of doing the same.
> 
> I agree. but if I am to produce a 3rd version. How about even not
> returning anything at all since the caller ignores the return value?
> 
> I was hesitating about doing this but I did figure that a reviewer
> would point it out if it was the right thing to do...

Oh yeah, just kill the return value - in fact, just kill the whole
helper then, it's pointless at that point. Just have the caller check
for io_napi() and call io_napi_sqpoll_busy_poll(), it's only that one
spot anyway.

-- 
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