]> git.ipfire.org Git - thirdparty/man-pages.git/commitdiff
usefaultfd.2: Add brief description of "non-cooperative" mode
authorMike Rapoport <rppt@linux.vnet.ibm.com>
Tue, 25 Apr 2017 16:29:08 +0000 (19:29 +0300)
committerMichael Kerrisk <mtk.manpages@gmail.com>
Wed, 26 Apr 2017 07:19:08 +0000 (09:19 +0200)
Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
man2/userfaultfd.2

index dc3731960a31b63a23cc76f9b7ab278be578d804..291dd10cfa5d715c5165c12926313fc65157a4cd 100644 (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