Thread (16 messages) flat view 16 messages, 3 authors, 2020-09-04

Re: [PATCH v2 2/4] exit: support non-blocking pidfds

From: Christian Brauner <hidden>
Date: 2020-09-03 15:38:54
Also in: linux-kselftest, lkml

On Thu, Sep 03, 2020 at 04:22:42PM +0200, Oleg Nesterov wrote:
On 09/02, Christian Brauner wrote:
quoted
It also makes the API more consistent and uniform. In essence, waitid() is
treated like a read on a non-blocking pidfd or a recvmsg() on a non-blocking
socket.
With the addition of support for non-blocking pidfds we support the same
functionality that sockets do. For sockets() recvmsg() supports MSG_DONTWAIT
for pidfds waitid() supports WNOHANG.
What I personally do not like is that waitid(WNOHANG) returns zero or EAGAIN
depending on f_flags & O_NONBLOCK... This doesn't match recvmsg(MSG_DONTWAIT)
and doesn't look consistent to me.
It's not my favorite thing either but async event loops are usually
modeled around EAGAIN so I think this has benefits. Josh can speak more
to that.

Christian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help