On 11/19/18 6:32 AM, Christoph Hellwig wrote:
>
> I just saw the patch that avoids the irq disabling show up in your
> tree this morning. I think we can do even better by using slightly
> lazy lists that are not updated from ->ki_complete context.
I totally agree, it's just a first step. One
I just saw the patch that avoids the irq disabling show up in your
tree this morning. I think we can do even better by using slightly
lazy lists that are not updated from ->ki_complete context.
Please take a look at the patch below - this replaces patch 3 from
my previous mail, that is it is
I like this idea, but there are a couple issues here.
First the flag per command really doesn't work - we need a creation
time flag. Unfortunately the existing io_setup system call doesn't
take flags, so we'll need to add a new one.
Second we need a check that the polling mode is actually
Add polled variants of PREAD/PREADV and PWRITE/PWRITEV. These act
like their non-polled counterparts, except we expect to poll for
completion of them. The polling happens at io_getevent() time, and
works just like non-polled IO.
Polled IO doesn't support the user mapped completion ring. Events