mlockall(3C)




NAME

     mlockall, munlockall - lock or unlock address space


SYNOPSIS

     #include <sys/mman.h>

     int mlockall(int flags);

     int munlockall(void);


DESCRIPTION

     The  mlockall() function locks in memory all pages mapped by
     an address space.

     The value of flags determines whether the pages to be locked
     are  those currently mapped by the address space, those that
     will be mapped in the future, or both:

            MCL_CURRENT  Lock current mappings
            MCL_FUTURE   Lock future mappings

     If MCL_FUTURE is  specified  for  mlockall(),  mappings  are
     locked  as  they  are added to the address space (or replace
     existing mappings), provided sufficient memory is available.
     Locking  in  this  manner  is not persistent across the exec
     family of functions (see exec(2)).

     Mappings locked using mlockall()  with  any  option  may  be
     explicitly unlocked with a munlock() call (see mlock(3C)).

     The  munlockall() function removes address space  locks  and
     locks on mappings in the address space.

     All conditions and constraints on the use of  locked  memory
     that apply to mlock(3C) also apply to mlockall().

     Locks established with mlockall() are  not  inherited  by  a
     child process after a  fork(2) call, and are not nested.


RETURN VALUES

     Upon successful completion, the   mlockall()  and   munlock-
     all()  functions  return  0.  Otherwise, they return  -1 and
     set errno to indicate the error.


ERRORS

     The mlockall() and munlockall() functions will fail if:

     EAGAIN
           Some or all of the memory in the address  space  could
           not be locked due to sufficient resources.  This error
           condition applies to mlockall() only.

     EINVAL
           The  flags  argument  contains   values   other   than
           MCL_CURRENT and MCL_FUTURE.

     EPERM The process's effective user ID is not super-user.


USAGE

     The mlockall() and munlockall() functions require super-user
     privileges.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | MT-Level                    | MT-Safe                     |
    |_____________________________|_____________________________|


SEE ALSO

     exec(2), fork(2), memcntl(2), mmap(2), plock(3C), mlock(3C),
     sysconf(3C), attributes(5)


Man(1) output converted with man2html