On Fri, Mar 18, 2022 at 07:13:43PM +0000, Ian Abbott wrote: > Support for the `UFFDIO_WRITEPROTECT` operation is not indicated in the > `ioctls` member of `struct uffdio_api`. It is indicated in the `ioctls` > member of `struct uffdio_register` along with indications of support for > the `UFFDIO_COPY`, `UFFDIO_WAKE` and `UFFDIO_ZEROPAGE` operations (and > also the `UFFDIO_CONTINUE` operation supported since Linux 5.13 but > that is not documented by this man page yet.) I thought it should have landed but indeed it's not. Copying Axel. > > Fixes: f559fa36a678 ("ioctl_userfaultfd.2: Add write-protect mode docs") > Signed-off-by: Ian Abbott <abbotti@xxxxxxxxx> The patch looks correct to me, thanks for fixing it. Acked-by: Peter Xu <peterx@xxxxxxxxxx> > --- > man2/ioctl_userfaultfd.2 | 27 ++++++++++++++++++++------- > 1 file changed, 20 insertions(+), 7 deletions(-) > > diff --git a/man2/ioctl_userfaultfd.2 b/man2/ioctl_userfaultfd.2 > index 504f61d4b..e930af520 100644 > --- a/man2/ioctl_userfaultfd.2 > +++ b/man2/ioctl_userfaultfd.2 > @@ -235,11 +235,6 @@ operation is supported. > The > .B UFFDIO_UNREGISTER > operation is supported. > -.TP > -.B 1 << _UFFDIO_WRITEPROTECT > -The > -.B UFFDIO_WRITEPROTECT > -operation is supported. > .PP > This > .BR ioctl (2) > @@ -333,8 +328,26 @@ If the operation is successful, the kernel modifies the > bit-mask field to indicate which > .BR ioctl (2) > operations are available for the specified range. > -This returned bit mask is as for > -.BR UFFDIO_API . > +This returned bit mask can contain the following bits: > +.TP > +.B 1 << _UFFDIO_COPY > +The > +.B UFFDIO_COPY > +operation is supported. > +.TP > +.B 1 << _UFFDIO_WAKE > +The > +.B UFFDIO_WAKE > +operation is supported. > +.TP > +.B 1 << _UFFDIO_WRITEPROTECT > +The > +.B UFFDIO_WRITEPROTECT > +.TP > +.B 1 << _UFFDIO_ZEROPAGE > +The > +.B UFFDIO_ZEROPAGE > +operation is supported. > .PP > This > .BR ioctl (2) > -- -- Peter Xu