Received: by 2002:ac0:bc90:0:0:0:0:0 with SMTP id a16csp5563591img; Wed, 27 Mar 2019 10:46:06 -0700 (PDT) X-Google-Smtp-Source: APXvYqz5hVBbR7eIpQkhWSgvTMx5ZZuLHhPoJMs++g3UNBKarE9LvWCpt+/IAITlLvTa/KCTnBX1 X-Received: by 2002:a65:6109:: with SMTP id z9mr10095507pgu.419.1553708766344; Wed, 27 Mar 2019 10:46:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553708766; cv=none; d=google.com; s=arc-20160816; b=AbOUqiRPE5DiZoWRI80OeKfsZdzsu585NggzlE5zjYIUEyUTZSEXFusHnMCxJ7FrGV PUNA1k9KbCE0MwuGp4y9QNzrW4MpbHNgmbkVKZcZTvko3XtOBwA2vmpKxkCqWFa2+dxx 5IsdESZauEtXnOXxH3PunS5/j3/FqAPvUgu+1Q5nlW7gLxoomGGdXec1ODPhvOMYBtvW f0f1Nyaogj/BSnpvIRjAQlJnWrdOPIOKovpNSkJALvz73tULG4drvNajbFKYz4y+Zmoq kGdTnxn9Z6ZDzEg3fCKm7HmPxdGzqz/Ru/BQGMEE6IzVhfVfWz8CcD2OfjvVZPORj+89 f3mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:subject:content-transfer-encoding :mime-version:user-agent:organization:references:in-reply-to:date:cc :to:from:message-id; bh=VBLucNB4Q2QxG+ylXm7tNeyv80r5VHyUPzHEk2ks/T4=; b=a3GfhcRp9GZNTTHTDoZpYkVVW1UmKyKhY4svBhYOdlcjpqseqsVL3X3ueg58INlkBP iObrL5OEMm6YUfYpemN6OVFyuOO7hunYuekYTnJF53yHmGBuK2b/EkbZ6zqXKfxT/rqS 34zZX5e5KSrm4fsn0lHj0CcoIC1LdZ5+Y4mX8Zunigsj0QDPFWp1I2jPB38ncc1f+8Hz ZtDcY6IzXF1oUJRqil+f/GcZS0OADijmCeR46F+uc3sKe32tm/G+YCOXsex6OcE5Vd1W Jtn3/C09j0sZt8S+HQo5uYOjuGaofcpQ3mNZ/WZAdXbyFy+8X6O09M+thcs7VixVF5e0 zajg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e65si18976234pfa.80.2019.03.27.10.45.50; Wed, 27 Mar 2019 10:46:06 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728546AbfC0RpH (ORCPT + 99 others); Wed, 27 Mar 2019 13:45:07 -0400 Received: from ou.quest-ce.net ([195.154.187.82]:54622 "EHLO ou.quest-ce.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727695AbfC0RpG (ORCPT ); Wed, 27 Mar 2019 13:45:06 -0400 X-Greylist: delayed 1408 seconds by postgrey-1.27 at vger.kernel.org; Wed, 27 Mar 2019 13:45:05 EDT Received: from [2a01:e35:39f2:1220:98ae:65aa:acef:50cb] (helo=test.quest-ce.net) by ou.quest-ce.net with esmtpsa (TLS1.1:RSA_AES_256_CBC_SHA1:256) (Exim 4.80) (envelope-from ) id 1h9CEu-000Eaw-T9; Wed, 27 Mar 2019 18:21:25 +0100 Message-ID: <9254286c02dbe883c14e38ed2af0022d36b17355.camel@opteya.com> From: Yann Droneaud To: Christian Brauner , jannh@google.com, khlebnikov@yandex-team.ru, luto@kernel.org, dhowells@redhat.com, serge@hallyn.com, ebiederm@xmission.com, linux-api@vger.kernel.org, linux-kernel@vger.kernel.org Cc: arnd@arndb.de, keescook@chromium.org, adobriyan@gmail.com, tglx@linutronix.de, mtk.manpages@gmail.com, bl0pbl33p@gmail.com, ldv@altlinux.org, akpm@linux-foundation.org, oleg@redhat.com, nagarathnam.muthusamy@oracle.com, cyphar@cyphar.com, viro@zeniv.linux.org.uk, joel@joelfernandes.org, dancol@google.com Date: Wed, 27 Mar 2019 18:21:24 +0100 In-Reply-To: <20190327162147.23198-3-christian@brauner.io> References: <20190327162147.23198-1-christian@brauner.io> <20190327162147.23198-3-christian@brauner.io> Organization: OPTEYA Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.32.0 (3.32.0-1.fc30) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 2a01:e35:39f2:1220:98ae:65aa:acef:50cb X-SA-Exim-Mail-From: ydroneaud@opteya.com X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on ou.quest-ce.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.3.2 Subject: Re: [PATCH 2/4] pid: add pidfd_open() X-SA-Exim-Version: 4.2.1 (built Mon, 26 Dec 2011 16:24:06 +0000) X-SA-Exim-Scanned: Yes (on ou.quest-ce.net) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Le mercredi 27 mars 2019 à 17:21 +0100, Christian Brauner a écrit : > diff --git a/kernel/pid.c b/kernel/pid.c > index 20881598bdfa..c9e24e726aba 100644 > --- a/kernel/pid.c > +++ b/kernel/pid.c > @@ -26,8 +26,10 @@ > +SYSCALL_DEFINE4(pidfd_open, pid_t, pid, int, procfd, int, pidfd, > unsigned int, > + flags) > +{ > + long fd = -EINVAL; > + > + if (flags & ~(PIDFD_TO_PROCFD | PROCFD_TO_PIDFD)) > + return -EINVAL; > + > + if (!flags) { > + struct pid *pidfd_pid; > + > + if (pid <= 0) > + return -EINVAL; > + > + if (procfd != -1 || pidfd != -1) > + return -EINVAL; > + > + rcu_read_lock(); > + pidfd_pid = get_pid(find_pid_ns(pid, task_active_pid_ns(current))); > + rcu_read_unlock(); > + > + fd = pidfd_create_fd(pidfd_pid, O_CLOEXEC); > + put_pid(pidfd_pid); > + } else if (flags & PIDFD_TO_PROCFD) { [...] > + } else if (flags & PROCFD_TO_PIDFD) { > + if (flags & ~PROCFD_TO_PIDFD) > + return -EINVAL; > + > + if (pid != -1) > + return -EINVAL; > + > + if (pidfd >= 0) > I think it can be stricter with: if (pidfd != -1) (and match the check done for flag == 0). Regards. -- Yann Droneaud OPTEYA