aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel_lock.c
diff options
context:
space:
mode:
authorMel Gorman <[email protected]>2008-04-28 09:12:18 +0000
committerLinus Torvalds <[email protected]>2008-04-28 15:58:19 +0000
commit19770b32609b6bf97a3dece2529089494cbfc549 (patch)
tree3b5922d1b20aabdf929bde9309f323841717747a /lib/kernel_lock.c
parentmm: have zonelist contains structs with both a zone pointer and zone_idx (diff)
downloadkernel-19770b32609b6bf97a3dece2529089494cbfc549.tar.gz
kernel-19770b32609b6bf97a3dece2529089494cbfc549.zip
mm: filter based on a nodemask as well as a gfp_mask
The MPOL_BIND policy creates a zonelist that is used for allocations controlled by that mempolicy. As the per-node zonelist is already being filtered based on a zone id, this patch adds a version of __alloc_pages() that takes a nodemask for further filtering. This eliminates the need for MPOL_BIND to create a custom zonelist. A positive benefit of this is that allocations using MPOL_BIND now use the local node's distance-ordered zonelist instead of a custom node-id-ordered zonelist. I.e., pages will be allocated from the closest allowed node with available memory. [[email protected]: Mempolicy: update stale documentation and comments] [[email protected]: Mempolicy: make dequeue_huge_page_vma() obey MPOL_BIND nodemask] [[email protected]: Mempolicy: make dequeue_huge_page_vma() obey MPOL_BIND nodemask rework] Signed-off-by: Mel Gorman <[email protected]> Acked-by: Christoph Lameter <[email protected]> Signed-off-by: Lee Schermerhorn <[email protected]> Cc: KAMEZAWA Hiroyuki <[email protected]> Cc: Mel Gorman <[email protected]> Cc: Hugh Dickins <[email protected]> Cc: Nick Piggin <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'lib/kernel_lock.c')
0 files changed, 0 insertions, 0 deletions