From 79da08c8445f1f50cc6ad353e878c56d28e46c38 Mon Sep 17 00:00:00 2001 From: Michael Kerrisk Date: Thu, 12 Apr 2018 14:49:52 +0200 Subject: [PATCH] mmap.2: Minor tweaks to Jan Kara's patch Signed-off-by: Michael Kerrisk --- man2/mmap.2 | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/man2/mmap.2 b/man2/mmap.2 index d91024ff5..bef8b4432 100644 --- a/man2/mmap.2 +++ b/man2/mmap.2 @@ -127,19 +127,21 @@ to the underlying file requires the use of .BR msync (2).) .TP .BR MAP_SHARED_VALIDATE " (since Linux 4.15)" -The same as +This flag provides the same behavior as .B MAP_SHARED except that .B MAP_SHARED mappings ignore unknown flags in .IR flags . -In contrast when creating mapping of -.B MAP_SHARED_VALIDATE -mapping type, the kernel verifies all passed flags are known and fails the -mapping with +By contrast, when creating a mapping using +.B MAP_SHARED_VALIDATE , +the kernel verifies all passed flags are known and fails the +mapping with the error .BR EOPNOTSUPP -otherwise. -This mapping type is also required to be able to use some mapping flags. +for unknown flags. +This mapping type is also required to be able to use some mapping flags +(e.g., +.BR MAP_SYNC ). .TP .B MAP_PRIVATE Create a private copy-on-write mapping. @@ -155,6 +157,8 @@ Both and .B MAP_PRIVATE are described in POSIX.1-2001 and POSIX.1-2008. +.B MAP_SHARED_VALIDATE +is a Linux extension. .PP In addition, zero or more of the following values can be ORed in .IR flags : @@ -432,19 +436,20 @@ support can later be transparently implemented for glibc. .\" context switch optimization?" .TP .BR MAP_SYNC " (since Linux 4.15)" -This flags is available only with +This flag is available only with the .B MAP_SHARED_VALIDATE -mapping type. -Mappings of +mapping type; +mappings of type .B MAP_SHARED -type will silently ignore this flag. +will silently ignore this flag. This flag is supported only for files supporting DAX (direct mapping of persistent memory). -For other files, creating mapping with this flag results in +For other files, creating a mapping with this flag results in an .B EOPNOTSUPP error. +.IP Shared file mappings with this flag provide the guarantee that while -some memory is writeably mapped in the address space of the process, +some memory is writably mapped in the address space of the process, it will be visible in the same file at the same offset even after the system crashes or is rebooted. This allows users of such mappings to make data modifications