Re: io_uring process termination/killing is not working

Josef
2020-08-17T08:58:39Z

> BTW, something I think you're aware of, but wanted to bring up
> explicitly - if IORING_FEAT_FAST_POLL is available in the ring features,
> then you generally don't want/need to link potentially blocking requests
> on pollable files with a poll in front. io_uring will do this
> internally, and save you an sqe and completion event for each of these
> types of requests.
>
> Your test case is a perfect example of that, neither the accept nor the
> socket read would need a poll linked in front of them, as they are both
> pollable file types and will not trigger use of an async thread to wait
> for the event. Instead an internal poll is armed which will trigger the
> issue of that request, when the socket is ready

I am guessing if the socket(non blocking) is not writable as you said
it's a pollable file type, io_uring will first use an internal poll to
check if the socket is writable, right? so I don't explicitly need a
poll(POLLOUT)

https://git.kernel.dk/cgit/linux-block/commit/?h=for-5.7/io_uring&id=d7718a9d25a61442da8ee8aeeff6a0097f0ccfd6
you didn't mentioned writeable non blocking sockets, that's why I'm
asking

--
Josef Grieb