Re: [PATCH 4/10] Mempolicy man pages: clarify MPOL_DEFAULT meaning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Lee,

(Your patch numbering got a bit wonky.  There were two 4's and two 6's, but
no 5 or 7.)

Depending what you think about the comments below, it may be worth revising
this patch and resending.

Lee Schermerhorn wrote:
Another attempt to rationalize description of MPOL_DEFAULT.

Since ~2.6.25, the system default memory policy is "local allocation".

So -- kernel behavior changed at 2.6.25?  If so, do we not need to include
some statement about before and after behavior?

MPOL_DEFAULT itself is a request to remove any non-default policy and
"fall back" to the surrounding context.  Try to say that without delving
into implementation details.

Signed-off-by:  Lee Schermerhorn <lee.schermerhorn@xxxxxx>

 man2/set_mempolicy.2 |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

Index: man-pages-3.05/man2/set_mempolicy.2
===================================================================
--- man-pages-3.05.orig/man2/set_mempolicy.2	2008-07-29 16:49:36.000000000 -0400
+++ man-pages-3.05/man2/set_mempolicy.2	2008-07-29 16:50:22.000000000 -0400
@@ -99,15 +99,15 @@ A non-empty
 specifies physical node ids.
 Linux does will not remap the
 .I nodemask
-when the task moves to a different cpuset context,
-nor when the set of nodes allowed by the task's
+when the process moves to a different cpuset context,
+nor when the set of nodes allowed by the process'
 current cpuset context changes.
 .TP
 .B MPOL_F_RELATIVE_NODES
 A non-empty
 .I nodemask
 specifies node ids that are relative to the set of
-node ids allowed  by the task's current cpuset.
+node ids allowed  by the process' current cpuset.
 .PP
 .I nodemask
 points to a bit mask of node IDs that contains up to
@@ -132,7 +132,7 @@ argument is ignored.
 Where a
 .I nodemask
 is required, it must contain at least one node that is on-line,
-allowed by the task's current cpuset context
+allowed by the process' current cpuset context
 [unless the
 .B MPOL_F_STATIC_NODES
 mode flag is specified],
@@ -152,8 +152,10 @@ cpuset context includes one or more of t
The
 .B MPOL_DEFAULT
-mode is the default and means to allocate memory locally,
-i.e., on the node of the CPU that triggered the allocation.
+mode specifies that any non-default process memory policy be removed
+and "fall back" to the system default policy.
+The system default policy is "local allocation"--
+i.e., allocate memory on the node of the CPU that triggered the allocation.
 .I nodemask
 must be specified as NULL.
 If the "local node" contains no free memory, the system will
@@ -203,9 +205,8 @@ If the
 .I nodemask
 and
 .I maxnode
-arguments specify the empty set, then the memory is allocated on
-the node of the CPU that triggered the allocation (like
-.BR MPOL_DEFAULT ).
+arguments specify the empty set, then the policy specifies
+explicit local allocation.

Was there a reason to lose the words " allocated on the node of the CPU that
triggered the allocation"?  Are they no longer true?  If they are still true,
it seems helpful to keep them (or something similar), since "explicit local
allocation" seems a little harder to understand.

Cheers,

Michael

 The process memory policy is preserved across an
 .BR execve (2),


--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
man-pages online: http://www.kernel.org/doc/man-pages/online_pages.html
Found a bug? http://www.kernel.org/doc/man-pages/reporting_bugs.html


--
To unsubscribe from this list: send the line "unsubscribe linux-numa" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]     [Devices]

  Powered by Linux