Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp630315pxk; Thu, 3 Sep 2020 08:39:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwmWh1lBhutCi+Tk115+7pmKp9B2LPgILHjSmyejngsSiRdkRXyXWqIar7mp+mXZnIjnnzk X-Received: by 2002:a17:906:cd0d:: with SMTP id oz13mr2724181ejb.212.1599147597809; Thu, 03 Sep 2020 08:39:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599147597; cv=none; d=google.com; s=arc-20160816; b=xBoceEM81J3nu3+CpEqAARgTnmuJwIqVcgcBo25Z5Hi8R/B9vveYYnpCfQwo835MAL ixPJhQ/ZgZzWbq1wgz9wU0BdI6O2IvEERGd98MKkHHlu9G7E65ERs5f2AT5IvxE4y9/6 FepPDxhAOpWTdvUxh/soN1WfzEH0YCMspuc0ykuXIlCW0vV+HCU4R1qIqQEfSwydMhV8 rCxPbS3JErAg1s4bMcvi5owI3RtQOmNYVetYKny0B0fnCeBW9kdkCOxvSWk54ekzOO11 HLgnGOBmxlWXnrgIAuLfmMiBcL5fFoBV9g8jTT22xILjQXRL3YV9KTkZ65yUcmQCowIn r+Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=97yM0+4w5MXuUYcWMVigJtsaZmReiEZgbruLQS0bMsU=; b=Oi6DzW6riuR+CxgsVhFkN1VDRh8cI9YSHTJROrufNW4r5dlraZgw+3tfSnXPXF2/r0 ITGfDnO9B+uWqmT3qTjE6Kh/CwDT0opW4fU2FeGjYJitHzefxYcUDJfbkrjFOSTBc45y pEG/94dJpmZDYW4IePavnzsngFIgLOquEbH/iCUvDxKGkL1FnoxeP7QG7/ZbDaLm4yOo 6GnhtCh9/ZCpzRbB8g/zTp4mt8DsM84VqMOOYGTijtIQbcMWkR6tQ5oyLM73kcZbj3WN YDF07/88fYepd7r8llipbVR/AFeNqUwNHxQxA23JZwz79QLsf2eukY8jdpq7NInvLu3n PO/A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v5si1911797edx.502.2020.09.03.08.39.34; Thu, 03 Sep 2020 08:39:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728407AbgICPiv (ORCPT + 99 others); Thu, 3 Sep 2020 11:38:51 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:37292 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726025AbgICPiv (ORCPT ); Thu, 3 Sep 2020 11:38:51 -0400 Received: from ip5f5af70b.dynamic.kabel-deutschland.de ([95.90.247.11] helo=wittgenstein) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1kDrK4-00029t-Nm; Thu, 03 Sep 2020 15:38:48 +0000 Date: Thu, 3 Sep 2020 17:38:47 +0200 From: Christian Brauner To: Oleg Nesterov Cc: linux-kernel@vger.kernel.org, Christian Brauner , "Peter Zijlstra (Intel)" , Ingo Molnar , Thomas Gleixner , "Eric W. Biederman" , Kees Cook , Sargun Dhillon , Aleksa Sarai , linux-kselftest@vger.kernel.org, Josh Triplett , Jens Axboe , linux-api@vger.kernel.org, Jann Horn Subject: Re: [PATCH v2 2/4] exit: support non-blocking pidfds Message-ID: <20200903153847.zvi5dzwj6v4eap6i@wittgenstein> References: <20200902102130.147672-1-christian.brauner@ubuntu.com> <20200902102130.147672-3-christian.brauner@ubuntu.com> <20200903142241.GI4386@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20200903142241.GI4386@redhat.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Sep 03, 2020 at 04:22:42PM +0200, Oleg Nesterov wrote: > On 09/02, Christian Brauner wrote: > > > > 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