Added MPOL_MF_MOVE and MPOL_MF_MOVE_ALL descriptions,

from numactl-0.9.2 man page.
Plus a few other smaller fixes.
This commit is contained in:
Michael Kerrisk 2006-03-15 10:26:29 +00:00
parent ec4db3e713
commit 123a769478
1 changed files with 38 additions and 1 deletions

View File

@ -117,6 +117,35 @@ if the existing pages in the mapping don't follow the policy.
In 2.6.16 or later the kernel will also try to move pages
to the requested node with this flag.
If
.B MPOL_MF_MOVE
is passed in
.IR flags ,
then an attempt will be made to
move all the pages in the mapping so that they follow the policy.
Pages that are shared with other processes are not moved.
If
.B MPOL_MF_STRICT
is also specified, then the call will fail with the error
.B EIO
if some pages could not be moved.
If
.B MPOL_MF_MOVE_ALL
is passed in
.IR flags ,
then all pages in the mapping will be moved regardless of whether
other processes use the pages.
The calling process must be privileged
.RB ( CAP_SYS_RESOURCE )
.\" FIXME This may yet be changed to CAP_SYS_NICE in 2.6.16.
to use this flag.
If
.B MPOL_MF_STRICT
is also specified, then the call will fail with the error
.B EIO
if some pages could not be moved.
.\" FIXME 2.6.16-rc1 adds MPOL_MF_MOVE and MPOL_MF_MOVE_ALL.
.\" These will need to be documented
.SH RETURN VALUE
@ -170,6 +199,9 @@ that does not follow the policy.
.SH NOTES
NUMA policy is not supported on file mappings.
.B MPOL_MF_STRICT
is ignored on huge page mappings right now.
It is unfortunate that the same flag,
.BR MPOL_DEFAULT ,
has different effects for
@ -203,9 +235,14 @@ Support for huge page policy was added with 2.6.16.
For interleave policy to be effective on huge page mappings the
policied memory needs to be tens of megabytes or larger.
.B MPOL_MF_MOVE
and
.B MPOL_MF_MOVE_ALL
are only available on Linux 2.6.16 and later.
These system calls should not be used directy.
Instead, the higher level interface provided by the
.BR numa (3)
h.BR numa (3)
functions in the
.I numactl
package is recommended.