plucky (2) ioctl_userfaultfd.2.gz

Provided by: manpages-dev_6.9.1-1_all bug

NAME

       ioctl_userfaultfd - create a file descriptor for handling page faults in user space

LIBRARY

       Standard C library (libc, -lc)

SYNOPSIS

       #include <linux/userfaultfd.h>  /* Definition of UFFD* constants */
       #include <sys/ioctl.h>

       int ioctl(int fd, int op, ...);

DESCRIPTION

       Various   ioctl(2)  operations  can  be  performed  on  a  userfaultfd  object  (created  by  a  call  to
       userfaultfd(2)) using calls of the form:

           ioctl(fd, op, argp);

       In the above, fd is a file descriptor referring to a userfaultfd object, op  is  one  of  the  operations
       listed below, and argp is a pointer to a data structure that is specific to op.

       The   various   ioctl(2)   operations   are   described  below.   The  UFFDIO_API,  UFFDIO_REGISTER,  and
       UFFDIO_UNREGISTER operations are used to configure userfaultfd  behavior.   These  operations  allow  the
       caller  to  choose  what  features  will  be  enabled  and  what kinds of events will be delivered to the
       application.  The remaining operations  are  range  operations.   These  operations  enable  the  calling
       application to resolve page-fault events.

       UFFDIO_API(2const)
       UFFDIO_REGISTER(2const)
       UFFDIO_UNREGISTER(2const)
       UFFDIO_COPY(2const)
       UFFDIO_ZEROPAGE(2const)
       UFFDIO_WAKE(2const)
       UFFDIO_WRITEPROTECT(2const)
       UFFDIO_CONTINUE(2const)
       UFFDIO_POISON(2const)

RETURN VALUE

       On success, 0 is returned.  On error, -1 is returned, and errno is set to indicate the error.

ERRORS

       The following general errors can occur for all of the operations described above:

       EFAULT argp does not point to a valid memory address.

       EINVAL (For  all operations except UFFDIO_API.)  The userfaultfd object has not yet been enabled (via the
              UFFDIO_API operation).

STANDARDS

       Linux.

EXAMPLES

       See userfaultfd(2).

SEE ALSO

       ioctl(2), mmap(2), userfaultfd(2)

       linux.git/Documentation/admin-guide/mm/userfaultfd.rst