PR_SET_IO_FLUSHER(2const) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | STANDARDS | HISTORY | SEE ALSO | COLOPHON

PR_SET_IO_FLUSHER(2const)                      PR_SET_IO_FLUSHER(2const)

NAME         top

       PR_SET_IO_FLUSHER - change the IO_FLUSHER state

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <linux/prctl.h>  /* Definition of PR_* constants */
       #include <sys/prctl.h>

       int prctl(PR_SET_IO_FLUSHER, long state, 0L, 0L, 0L);

DESCRIPTION         top

       If a user process is involved in the block layer or filesystem
       I/O path, and can allocate memory while processing I/O requests
       it must set state to 1.  This will put the process in the
       IO_FLUSHER state, which allows it special treatment to make
       progress when allocating memory.  If state is 0, the process will
       clear the IO_FLUSHER state, and the default behavior will be
       used.

       The calling process must have the CAP_SYS_RESOURCE capability.

       The IO_FLUSHER state is inherited by a child process created via
       fork(2) and is preserved across execve(2).

       Examples of IO_FLUSHER applications are FUSE daemons, SCSI device
       emulation daemons, and daemons that perform error handling like
       multipath path recovery applications.

RETURN VALUE         top

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

ERRORS         top

       EINVAL state is not a valid value.

STANDARDS         top

       Linux.

HISTORY         top

       Linux 5.6.

SEE ALSO         top

       prctl(2), PR_GET_IO_FLUSHER(2const)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.9.1.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2024-06-26.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       [email protected]

Linux man-pages 6.9.1          2024-06-01      PR_SET_IO_FLUSHER(2const)

Pages that refer to this page: prctl(2)PR_GET_IO_FLUSHER(2const)