X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=original%2Fman2%2Fmsync.2;h=6c98f4610a3c156d7499af9ac6d0fad1340aa638;hb=110dba020f489b75aff2497105f7970c05e2b87c;hp=2e0e720330e9feadf8288f0996f35dd2a828df17;hpb=78d692a91a29bb279b5fc6a6294ff3e418a184c8;p=linuxjm%2FLDP_man-pages.git diff --git a/original/man2/msync.2 b/original/man2/msync.2 index 2e0e7203..6c98f461 100644 --- a/original/man2/msync.2 +++ b/original/man2/msync.2 @@ -22,7 +22,7 @@ .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" -.TH MSYNC 2 2008-04-22 "Linux" "Linux Programmer's Manual" +.TH MSYNC 2 2014-04-20 "Linux" "Linux Programmer's Manual" .SH NAME msync \- synchronize a file with a memory map .SH SYNOPSIS @@ -34,7 +34,7 @@ msync \- synchronize a file with a memory map flushes changes made to the in-core copy of a file that was mapped into memory using .BR mmap (2) -back to disk. +back to the filesystem. Without use of this call there is no guarantee that changes are written back before .BR munmap (2) @@ -100,7 +100,7 @@ This call was introduced in Linux 1.3.21, and then used .B EFAULT instead of .BR ENOMEM . -In Linux 2.4.19 this was changed to the POSIX value +In Linux 2.4.19, this was changed to the POSIX value .BR ENOMEM . .SH AVAILABILITY On POSIX systems on which @@ -117,15 +117,43 @@ to a value greater than 0. .\" POSIX.1-2001: It shall be defined to -1 or 0 or 200112L. .\" -1: unavailable, 0: ask using sysconf(). .\" glibc defines them to 1. +.SH NOTES +According to POSIX, either +.BR MS_SYNC +or +.BR MS_ASYNC +must be specified in +.IR flags , +and indeed failure to include one of these flags will cause +.BR msync () +to fail on some systems. +However, Linux permits a call to +.BR msync () +that specifies neither of these flags, +with semantics that are (currently) equivalent to specifying +.BR MS_ASYNC . +(Since Linux 2.6.19, +.\" commit 204ec841fbea3e5138168edbc3a76d46747cc987 +.BR MS_ASYNC +is in fact a no-op, since the kernel properly tracks dirty +pages and flushes them to storage as necessary.) +Notwithstanding the Linux behavior, +portable, future-proof applications should ensure that they specify either +.BR MS_SYNC +or +.BR MS_ASYNC +in +.IR flags . .SH SEE ALSO .BR mmap (2) B.O. Gallmeister, POSIX.4, O'Reilly, pp. 128-129 and 389-391. .SH COLOPHON -This page is part of release 3.64 of the Linux +This page is part of release 3.68 of the Linux .I man-pages project. A description of the project, -and information about reporting bugs, +information about reporting bugs, +and the latest version of this page, can be found at \%http://www.kernel.org/doc/man\-pages/.