summaryrefslogtreecommitdiffstats
path: root/man3p/mlockall.3p
diff options
context:
space:
mode:
Diffstat (limited to 'man3p/mlockall.3p')
-rw-r--r--man3p/mlockall.3p133
1 files changed, 133 insertions, 0 deletions
diff --git a/man3p/mlockall.3p b/man3p/mlockall.3p
new file mode 100644
index 000000000..a0672cb36
--- /dev/null
+++ b/man3p/mlockall.3p
@@ -0,0 +1,133 @@
+.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
+.TH "MLOCKALL" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
+.\" mlockall
+.SH NAME
+mlockall, munlockall \- lock/unlock the address space of a process
+(\fBREALTIME\fP)
+.SH SYNOPSIS
+.LP
+\fB#include <sys/mman.h>
+.br
+.sp
+int mlockall(int\fP \fIflags\fP\fB);
+.br
+int munlockall(void); \fP
+\fB
+.br
+\fP
+.SH DESCRIPTION
+.LP
+The \fImlockall\fP() function shall cause all of the pages mapped
+by the address space of a process to be memory-resident until
+unlocked or until the process exits or \fIexec\fPs another process
+image. The \fIflags\fP
+argument determines whether the pages to be locked are those currently
+mapped by the address space of the process, those that are
+mapped in the future, or both. The \fIflags\fP argument is constructed
+from the bitwise-inclusive OR of one or more of the
+following symbolic constants, defined in \fI<sys/mman.h>\fP:
+.TP 7
+MCL_CURRENT
+Lock all of the pages currently mapped into the address space of the
+process.
+.TP 7
+MCL_FUTURE
+Lock all of the pages that become mapped into the address space of
+the process in the future, when those mappings are
+established.
+.sp
+.LP
+If MCL_FUTURE is specified, and the automatic locking of future mappings
+eventually causes the amount of locked memory to exceed
+the amount of available physical memory or any other implementation-defined
+limit, the behavior is implementation-defined. The
+manner in which the implementation informs the application of these
+situations is also implementation-defined.
+.LP
+The \fImunlockall\fP() function shall unlock all currently mapped
+pages of the address space of the process. Any pages that
+become mapped into the address space of the process after a call to
+\fImunlockall\fP() shall not be locked, unless there is an
+intervening call to \fImlockall\fP() specifying MCL_FUTURE or a subsequent
+call to \fImlockall\fP() specifying MCL_CURRENT. If
+pages mapped into the address space of the process are also mapped
+into the address spaces of other processes and are locked by
+those processes, the locks established by the other processes shall
+be unaffected by a call by this process to
+\fImunlockall\fP().
+.LP
+Upon successful return from the \fImlockall\fP() function that specifies
+MCL_CURRENT, all currently mapped pages of the
+process' address space shall be memory-resident and locked. Upon return
+from the \fImunlockall\fP() function, all currently mapped
+pages of the process' address space shall be unlocked with respect
+to the process' address space. The memory residency of unlocked
+pages is unspecified.
+.LP
+The appropriate privilege is required to lock process memory with
+\fImlockall\fP().
+.SH RETURN VALUE
+.LP
+Upon successful completion, the \fImlockall\fP() function shall return
+a value of zero. Otherwise, no additional memory shall
+be locked, and the function shall return a value of -1 and set \fIerrno\fP
+to indicate the error. The effect of failure of
+\fImlockall\fP() on previously existing locks in the address space
+is unspecified.
+.LP
+If it is supported by the implementation, the \fImunlockall\fP() function
+shall always return a value of zero. Otherwise, the
+function shall return a value of -1 and set \fIerrno\fP to indicate
+the error.
+.SH ERRORS
+.LP
+The \fImlockall\fP() function shall fail if:
+.TP 7
+.B EAGAIN
+Some or all of the memory identified by the operation could not be
+locked when the call was made.
+.TP 7
+.B EINVAL
+The \fIflags\fP argument is zero, or includes unimplemented flags.
+.sp
+.LP
+The \fImlockall\fP() function may fail if:
+.TP 7
+.B ENOMEM
+Locking all of the pages currently mapped into the address space of
+the process would exceed an implementation-defined limit on
+the amount of memory that the process may lock.
+.TP 7
+.B EPERM
+The calling process does not have the appropriate privilege to perform
+the requested operation.
+.sp
+.LP
+\fIThe following sections are informative.\fP
+.SH EXAMPLES
+.LP
+None.
+.SH APPLICATION USAGE
+.LP
+None.
+.SH RATIONALE
+.LP
+None.
+.SH FUTURE DIRECTIONS
+.LP
+None.
+.SH SEE ALSO
+.LP
+\fIexec\fP() , \fIexit\fP() , \fIfork\fP() , \fImlock\fP() , \fImunmap\fP()
+, the Base
+Definitions volume of IEEE\ Std\ 1003.1-2001, \fI<sys/mman.h>\fP
+.SH COPYRIGHT
+Portions of this text are reprinted and reproduced in electronic form
+from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
+-- Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group. In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard
+is the referee document. The original Standard can be obtained online at
+http://www.opengroup.org/unix/online.html .