Re: [PATCH man-pages v1 4/6] UFFDIO_API.2const: Document UFFD_FEATURE_RWP{,_ASYNC} and 1 << _UFFDIO_SET_MODE

Alejandro Colomar <[email protected]> Mon, 25 May 2026 16:00:33 +0200
Newsgroups org.kernel.vger.linux-man,org.kvack.linux-mm
Message-ID <ahRV5sZCUXVQ_fBs@devuan>
Hi Kiryl,

On 2026-05-25T13:28:14+0100, Kiryl Shutsemau wrote:
> Add the two RWP feature bits introduced in Linux 7.2:
> 
>   UFFD_FEATURE_RWP        gates UFFDIO_REGISTER_MODE_RWP and the
>                           UFFDIO_RWPROTECT(2const) ioctl.
>   UFFD_FEATURE_RWP_ASYNC  in-kernel resolution of RWP faults without
>                           delivering a notification; requires
>                           UFFD_FEATURE_RWP to be set in the same
>                           UFFDIO_API call.
> 
> Also document 1 << _UFFDIO_SET_MODE in argp->ioctls, the
> file-descriptor-level bit that advertises UFFDIO_SET_MODE(2const) for
> toggling UFFD_FEATURE_RWP_ASYNC at runtime; it is independent of any
> registered range.

Would you mind separating these into 3 patches?  Thanks!

> 
> The existing page intro already describes UFFDIO_API returning EINVAL
> on unsupported feature bits and the temporary-uffd probe pattern, so
> the new TP entries do not re-state that.
> 
> Signed-off-by: Kiryl Shutsemau <[email protected]>


Have a lovely day!
Alex

> ---
>  man/man2const/UFFDIO_API.2const | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
> 
> diff --git a/man/man2const/UFFDIO_API.2const b/man/man2const/UFFDIO_API.2const
> index e894114bb8e2..d2819f009f97 100644
> --- a/man/man2const/UFFDIO_API.2const
> +++ b/man/man2const/UFFDIO_API.2const
> @@ -213,6 +213,28 @@ If this feature bit is set,
>  the kernel supports resolving faults with the
>  .B UFFDIO_MOVE
>  ioctl.
> +.TP
> +.BR UFFD_FEATURE_RWP " (since Linux 7.2)"
> +If this feature bit is set,
> +the kernel supports read-write protection tracking, and the
> +.B UFFDIO_REGISTER_MODE_RWP
> +registration mode and the
> +.B UFFDIO_RWPROTECT
> +ioctl become available.
> +.TP
> +.BR UFFD_FEATURE_RWP_ASYNC " (since Linux 7.2)"
> +If this feature bit is set,
> +the kernel will resolve read-write protect faults in place without
> +delivering a notification, automatically restoring page permissions and
> +letting the faulted thread continue.
> +This bit requires
> +.B UFFD_FEATURE_RWP
> +to be set in the same
> +.B UFFDIO_API
> +call.
> +The async mode can also be toggled at runtime using the
> +.BR UFFDIO_SET_MODE (2const)
> +ioctl.
>  .P
>  The returned
>  .I argp->ioctls
> @@ -234,6 +256,13 @@ operation is supported.
>  The
>  .B UFFDIO_UNREGISTER
>  operation is supported.
> +.TP
> +.BR "1 << _UFFDIO_SET_MODE" " (since Linux 7.2)"
> +The
> +.B UFFDIO_SET_MODE
> +operation is supported.
> +This is a file-descriptor-level ioctl and is reported once per
> +userfaultfd, independent of any registered range.
>  .SH RETURN VALUE
>  On success,
>  0 is returned.
> -- 
> 2.54.0
> 
> 

-- 
<https://www.alejandro-colomar.es>
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEES7Jt9u9GbmlWADAi64mZXMKQwqkFAmoUVgEACgkQ64mZXMKQ
wqk1Jg/9Fz8ASGTokbYOX1XSVWGS1dHbPMc3pwu3Xy8EFHoB6LL2jvWzy6Uoo/0M
e2L3AXQ2jzfHmaS4kUR6R3X3QUl49IL0pvWXDjeJu3orddNbHjN/bjEyeCdBlsTc
McIj+OufpXN+pLiRzDr0KPVvt6VqIM0ThXMA5LcJuvnhAnkuLFl91w7h9L3JjPi2
4vT2qvdXY0jw7HVfyuovxMGIC8FdQyTfbehKnDEA5woXTu7UfvtWY5xtjUB7+DxC
iQ20JDm7tvAX5r5Xa7URrsph4+GC1mIeHWr1nkyjokKLeb5qnQT5h6tsxl4DiDvD
nsFqITLT3dtYyLBKN2OcvSe5OC0yzAEYaGBNd3hjTlrHHbVSqIsO7qotrokyoziG
AgIEkLZnDSg/plpc1AQS/f/wzm643t87BewAdUsEKldz7FKj/JVwP6S6l1/W4/at
8OO+yFAOub1NbV2fcZSrFr9K4I/MdXmPvXNhSO1Al9Uamq3H/SlKZ92N8Ahn/sdu
BEVvAsQspTsW288M+h87mYEgTxMCAmz6nwGjLg/n/Tsp8Vg21rDhSOkrBYFrO9TE
jDweNLIQ8YGon7eHjZVnoc3R7PGnsiPC8qFF/WyWfXvXRuNs0VcKx8JbfpWfyNmp
4V0VMle3s8rap+juLrN3I6mvbA2UXd3+KD0lkgjTQuwKc0rKQFU=
=zhYn
-----END PGP SIGNATURE-----