mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
page allocator: do not check NUMA node ID when the caller knows the node is valid
Callers of alloc_pages_node() can optionally specify -1 as a node to mean "allocate from the current node". However, a number of the callers in fast paths know for a fact their node is valid. To avoid a comparison and branch, this patch adds alloc_pages_exact_node() that only checks the nid with VM_BUG_ON(). Callers that know their node is valid are then converted. Signed-off-by: Mel Gorman <[email protected]> Reviewed-by: Christoph Lameter <[email protected]> Reviewed-by: KOSAKI Motohiro <[email protected]> Reviewed-by: Pekka Enberg <[email protected]> Acked-by: Paul Mundt <[email protected]> [for the SLOB NUMA bits] Cc: Peter Zijlstra <[email protected]> Cc: Nick Piggin <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Lee Schermerhorn <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
b3c466ce51
commit
6484eb3e2a
17 changed files with 33 additions and 24 deletions
|
|
@ -46,7 +46,7 @@
|
|||
* NUMA support in SLOB is fairly simplistic, pushing most of the real
|
||||
* logic down to the page allocator, and simply doing the node accounting
|
||||
* on the upper levels. In the event that a node id is explicitly
|
||||
* provided, alloc_pages_node() with the specified node id is used
|
||||
* provided, alloc_pages_exact_node() with the specified node id is used
|
||||
* instead. The common case (or when the node id isn't explicitly provided)
|
||||
* will default to the current node, as per numa_node_id().
|
||||
*
|
||||
|
|
@ -244,7 +244,7 @@ static void *slob_new_pages(gfp_t gfp, int order, int node)
|
|||
|
||||
#ifdef CONFIG_NUMA
|
||||
if (node != -1)
|
||||
page = alloc_pages_node(node, gfp, order);
|
||||
page = alloc_pages_exact_node(node, gfp, order);
|
||||
else
|
||||
#endif
|
||||
page = alloc_pages(gfp, order);
|
||||
|
|
|
|||
Loading…
Reference in a new issue