On 7/9/22 8:21 AM, Hrvoje Zeba wrote: > Hi folks, > > I was adapting msquic library to work with iouring and found an issue > with recvmsg() where it ignores O_NONBLOCK flag set on the file > descriptor. If MSG_DONTWAIT is set in flags, it behaves as expected. > I've attached a simple test which currently just hangs on iouring's > recvmsg(). I'm guessing sendmsg() behaves the same way but I have no > idea how to fill the buffer to reliably test it. I am guessing that you're waiting off waiting for the event. It's not stalled on the issue, it'll arm poll and wait for an event. I won't go into too much of a ran on O_NONBLOCK, but it's a giant mess, and where possible, io_uring relies on per-request non-block flags as that is much saner behavior. -- Jens Axboe