usefaultfd.2: Add brief description of "non-cooperative" mode

Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Mike Rapoport 2017-04-25 19:29:08 +03:00 committed by Michael Kerrisk
parent 184481665f
commit d28aadf6c3
1 changed files with 14 additions and 0 deletions

View File

@ -89,6 +89,20 @@ them using the operations described in
.BR ioctl_userfaultfd (2).
When servicing the page fault events,
the fault-handling thread can trigger a wake-up for the sleeping thread.
It is possible for the faulting threads and the fault-handling threads
to run in the context of different processes.
In this case, these threads may belong to different programs,
and the program that executes the faulting threads
will not necessarily cooperate with the program that handles the page faults.
In such non-cooperative mode,
the process that monitors userfaultfd and handles page faults,
needs to be aware of the changes in the virtual memory layout
of the faulting process to avoid memory corruption.
.\" FIXME elaborate about non-cooperating mode, describe its limitations
.\" for kerneles before 4.11, features added in 4.11
.\" and limitations remaining in 4.11
.\" Maybe it's worth adding a dedicated sub-section...
.\"
.SS Userfaultfd operation
After the userfaultfd object is created with