From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 03905E95A8E for ; Sun, 8 Oct 2023 22:25:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7435E6B01A4; Sun, 8 Oct 2023 18:25:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6F37B6B01A5; Sun, 8 Oct 2023 18:25:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5E27C6B01A6; Sun, 8 Oct 2023 18:25:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 509E46B01A4 for ; Sun, 8 Oct 2023 18:25:54 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 29CD2A011F for ; Sun, 8 Oct 2023 22:25:54 +0000 (UTC) X-FDA: 81323727828.28.CE460FE Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf20.hostedemail.com (Postfix) with ESMTP id D4F291C0023 for ; Sun, 8 Oct 2023 22:25:51 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=BXvXe2g3; spf=pass (imf20.hostedemail.com: domain of alx@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=alx@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1696803952; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=SPmz9wJCHbUpsKrhNl9QAubzLo6YWxfvHPDYqEGd6sY=; b=hxsJcQMX6jUkex3PflFPOkxA9fjWkymRjGq7BOBnmPcOll/d1U7QwnKgnqZ/supgzJXsF5 clsaXc5sompKchH67ICv71Yeqe9DGyZDXnbNl6fbImdZmKEnqwHTOCvvRlgvQgeQQ8pgfN UTWhqlrIwM2ADfmxuH7EKoxU157pt2g= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=BXvXe2g3; spf=pass (imf20.hostedemail.com: domain of alx@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=alx@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1696803952; a=rsa-sha256; cv=none; b=LgHbRkMXMmOWkELc+4yMBOzWpVliiNEmSfFcgS/TukDw6zl0tKRHjVZKAQWPflenAdPRpR tNtiq8iHt13DyfUrvTtxuJn3+0y2jQvquIzHLiPAHK+VJd7/Ro9/gyyxKzmq4HsUMFySHl b5hJjbIxooRsCL37qtv67qsmSnz4R5Y= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id ED85DCE0B64; Sun, 8 Oct 2023 22:25:48 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 07FBEC433C7; Sun, 8 Oct 2023 22:25:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1696803948; bh=QrkuFelQkgF4dmVeOtjNdhlzBMRjrCcoF4SOVif4oIs=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=BXvXe2g3qldchM8UvdGuaMQL0oYBVvRQCvD0QUHj6Li4OR/OXp00Cs7Cq/q3Yx0OQ 3tFhu+8VHTqsXUTjOwe2RiKkmnHKjXDsGrmK4jm/P19/I+LEvJcBhbvB0NL9Uqx+E5 MFRY+XIRejnrU6x9805L1AT0puETUp3t4hN19k5Hk5X6X0Whub8dxSfwNYVwqnD98q w4VUeDhE0/iVaUEEw/nH86v3j1gLaHl7KH2YTqQq73o/Q7DKxKlbKiN9FFCBlPiZlO 1L0oGx2rM2lw2MTY6E0gMZWuNqYT3K2X2WEkC9+4ELMuq/+lHIcTLxGVRqMGIYMlFs Uo6Jof74j06jA== Date: Mon, 9 Oct 2023 00:25:44 +0200 From: Alejandro Colomar To: Axel Rasmussen Cc: Peter Xu , linux-man@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 2/5] ioctl_userfaultfd.2: correct and update UFFDIO_API ioctl error codes Message-ID: References: <20231003194547.2237424-1-axelrasmussen@google.com> <20231003194547.2237424-3-axelrasmussen@google.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Xg0NzKVlmIEGA05n" Content-Disposition: inline In-Reply-To: <20231003194547.2237424-3-axelrasmussen@google.com> X-Rspamd-Queue-Id: D4F291C0023 X-Rspam-User: X-Stat-Signature: 19y57skoq3prdqjb594dx5idbjp668uw X-Rspamd-Server: rspam01 X-HE-Tag: 1696803951-187987 X-HE-Meta: U2FsdGVkX1/eCrLQUSPfYFMA4lPkyRrGmdEzg1/9D5VrWySBVsacWuzWlqxpZlA1pMLKajP2qCI84BKcwn7ztSEl0s8mOMKjow0WD6r91G4fH2ur8uW7INKpOAimhuZyRir4bUQ/rviVIPwMWZ4p/0n23R08IRZatjIlAAS0eTJ1XeGh+Omk3SMMQbtFxeAvhKfwspeSPuP0x55QN1pCuJSlo80P7VZFvUFSB2u25SxfRL6gJgrQXm51Yh38zSmj53jQ9wlB7iRvm3VpnT3nZrkXNkRv90u8idQMfC32dlaC5NNqfILqmhWRk3R3Y6NCQQhfJomOGUeqVXisFdMzdS4mX/TB1W6xoPLM1P2spGAQ56ZeiRUQ4cuRUhEaWjWcUY8X/68cr0LZSsCrojDOAmZSgru0TOJFDg7lpohp9e2JkwKBGFRxKmFJh8UL6/F7/7L2tEaElINH0E9PAfUFWsEd5nZ09f8nW5XHOlngkWE8cjtCXrErhVkY12QnIWN4oX2Q5kt/o2fjlr6ojIpgfy1j232DlTOTROvHyJtg1AAklQ1uKaBYDkYl99E2Mw6wGhIWbQZdfnpsGgkR8y2b8c04H6sAxVWWttpx3OOiB4pbdasNDhbjAwRLm6PfigyWpAKFtwXYryg7SdbQRnB4Y/w5CiCve37ds//or56iP/1ix7T5/EGU9eBrullpXtIYDtEXXBc0DYn85un7jLdZcQmUr6jYEJUqO+1sHWkZYsjKmMPGor/vTKbv7NoIpd7dqpgzuSyGqgQvkyP3EsAL9YCzlYdzvfPy2CgL4guhm1jsMkbZsi0TntMswMHM0mryFCbFVj42NOkskOXykIW9QIS+xokBAkqBEgQGmpuBTgc5Pijm1jmtDlS6AI4VTPHBPd//hZYWIXMJmv7gXlwqpwKZgP8r4DSaRn23uRq/ZOP/TDlr74SfYQ1kajCP1KzX0Ww2IEVrCK188X44JDR ATWRc5Oq p8ddPxeYSBLzjK6fJ5EcDMYFJNLj/1KUbIvov8+0jaNel2N3kB3LBKrfTNWP5T3UzeFoI2at8NDM+lvB7RanTPOvYCtjsDohFONJYAGLDmDKl26BiA5HGnjqb/o0+GRoYEwbumT/RpTiUrL2jUhIj6NY9K6nEBHE29nnFaYqa/USbjet+9RDqzPWlPoIo+TumSqWF/Bt6sTq/yqdLK7Z90Xyp7tfmlsOaM/Y++sz11Zi1/nfZp1w+X28qqE9iaMB42Giy4bAX2aNVmSVhi9bj9E3BVW5klVFwB0Fpilw1KMZJWYRyNodYVeIjQJACxAONh3IMHrU7LfLD1JMg7Pq3IkHWLbQEXrWai6M7nFslJn7SS8HhICvxs7M2a2g2lXtIeWLoUhMaiaozCTifr6sOR15aOAZ0KsKK6nI0+bOtk56ScO0= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --Xg0NzKVlmIEGA05n Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Mon, 9 Oct 2023 00:25:44 +0200 From: Alejandro Colomar To: Axel Rasmussen Cc: Peter Xu , linux-man@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 2/5] ioctl_userfaultfd.2: correct and update UFFDIO_API ioctl error codes Hi Axel, On Tue, Oct 03, 2023 at 12:45:44PM -0700, Axel Rasmussen wrote: > First, it is not correct that repeated UFFDIO_API calls result in > EINVAL. This is true *if both calls enable features*, but in the case > where we're doing a two-step feature detection handshake, the kernel > explicitly expects 2 calls (one with no features set). So, correct this > description. >=20 > Then, some new error cases have been added to the kernel recently, and > the man page wasn't updated to note these. So, add in descriptions of > these new error cases. >=20 > Signed-off-by: Axel Rasmussen Patch applied. Thanks, Alex > --- > man2/ioctl_userfaultfd.2 | 24 +++++++++++++++++++----- > 1 file changed, 19 insertions(+), 5 deletions(-) >=20 > diff --git a/man2/ioctl_userfaultfd.2 b/man2/ioctl_userfaultfd.2 > index ef352a69d..28dd2fcdd 100644 > --- a/man2/ioctl_userfaultfd.2 > +++ b/man2/ioctl_userfaultfd.2 > @@ -256,17 +256,31 @@ refers to an address that is outside the calling pr= ocess's > accessible address space. > .TP > .B EINVAL > -The userfaultfd has already been enabled by a previous > -.B UFFDIO_API > -operation. > -.TP > -.B EINVAL > The API version requested in the > .I api > field is not supported by this kernel, or the > .I features > field passed to the kernel includes feature bits that are not supported > by the current kernel version. > +.TP > +.B EINVAL > +A previous > +.B UFFDIO_API > +call already enabled one or more features for this userfaultfd. > +Calling > +.B UFFDIO_API > +twice, > +the first time with no features set, > +is explicitly allowed > +as per the two-step feature detection handshake. > +.TP > +.B EPERM > +The > +.B UFFD_FEATURE_EVENT_FORK > +feature was enabled, > +but the calling process doesn't have the > +.B CAP_SYS_PTRACE > +capability. > .\" FIXME In the above error case, the returned 'uffdio_api' structure is > .\" zeroed out. Why is this done? This should be explained in the manual= page. > .\" > --=20 > 2.42.0.609.gbb76f46606-goog >=20 --=20 --Xg0NzKVlmIEGA05n Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE6jqH8KTroDDkXfJAnowa+77/2zIFAmUjLGgACgkQnowa+77/ 2zJlIA//Y16WCTGtmYOnY6FKmX5w6ECWQE1OpB05FcYSRYBUlIhAwfgcBRWQ3ZWZ ji+X7zzEQlrziC4hoKmbhiTq26Zvc8cighajyi5xKiAPou3shriMHJLMybRncB0b nzE8eZPc+1M64tE3iJop7Kdh8We3uVvIrXDaeWNCwhLGUlfFdE9GhJaiY37tWmGj lkCnXitB9lelweX7feZm+aOy/LKa8AW9jcNdn9s9vrLvUmOPcaH+AWOr5vfz4/4q R2iI/zWou7GElOvNYMkXwZ3KKhH5UpVe/KzKPADo98H7dLOug/D685bFimRWTC6Q jaOxMS5iTr1dFZHBj+c4V2RWBcrGspFLiCpTwnMOJAn1iATupofHDqPdrVgmkULr M1jiel4faoHdzTA8eKlNeEEs0FSB2UIioR9fkbB6v9ts7+tSLI4M8TjqvLhG03g4 gNeZ1AsFgJH+bgAhA53ZPSTGVLNiiv91zawY5/inkuOrGU5v7RgJHUCkHGX0j2zD Y8egedLm0hc4WYOCaSWnO1gtFE6KLJZjWc/4PNSJFTQf76iocBx3jpfhDWXLUfAf phlmVOsVwMoYEQx3xPdk7rByO/8h4B3rLPP6g0cIr/54oPWKs6G6kfUU2zCnizx+ diSwyLdB5OBV/p9ejJJyHFsBAbhHMtjZnKqyj+JllYCZ4J/j19U= =elyF -----END PGP SIGNATURE----- --Xg0NzKVlmIEGA05n--