Re: [PATCH v2 0/2] Optimise io_uring completion waiting

From: Jens Axboe
Date: Mon Sep 23 2019 - 16:48:49 EST


On 9/23/19 10:32 AM, Pavel Begunkov wrote:
> Sorry, mixed the threads.
>
>>>
>>> I'm not sure an extension is needed for such a special interface, why not
>>> just put a ->threshold value next to the ctx->wait field and use either
>>> the regular wait_event() APIs with the proper condition, or
>>> wait_event_cmd() style APIs if you absolutely need something more complex
>>> to happen inside?
> Ingo,
> io_uring works well without this patch just using wait_event_*() with
> proper condition, but there are performance issues with spurious
> wakeups. Detailed description in the previous mail.
> Am I missing something?

I think we can do the same thing, just wrapping the waitqueue in a
structure with a count in it, on the stack. Got some flight time
coming up later today, let me try and cook up a patch.

--
Jens Axboe