Memoryless nodes: Update memory policy and page migration
authorChristoph Lameter <[email protected]>
Tue, 16 Oct 2007 08:25:35 +0000 (01:25 -0700)
committerLinus Torvalds <[email protected]>
Tue, 16 Oct 2007 16:42:58 +0000 (09:42 -0700)
commit56bbd65df0e92a4a8eb70c5f2b416ae2b6c5fb31
tree714154b7b16d2e08c60d49b925aa0e789f0f0be0
parent4199cfa02b982f4c739e8a6a304d6a40e1935d25
Memoryless nodes: Update memory policy and page migration

Online nodes now may have no memory.  The checks and initialization must
therefore be changed to no longer use the online functions.

This will correctly initialize the interleave on bootup to only target nodes
with memory and will make sys_move_pages return an error when a page is to be
moved to a memoryless node.  Similarly we will get an error if MPOL_BIND and
MPOL_INTERLEAVE is used on a memoryless node.

These are somewhat new semantics.  So far one could specify memoryless nodes
and we would maybe do the right thing and just ignore the node (or we'd do
something strange like with MPOL_INTERLEAVE).  If we want to allow the
specification of memoryless nodes via memory policies then we need to keep
checking for online nodes.

Signed-off-by: Christoph Lameter <[email protected]>
Acked-by: Nishanth Aravamudan <[email protected]>
Tested-by: Lee Schermerhorn <[email protected]>
Acked-by: Bob Picco <[email protected]>
Cc: KAMEZAWA Hiroyuki <[email protected]>
Cc: Mel Gorman <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
mm/mempolicy.c
mm/migrate.c