diff options
author | Mel Gorman <mgorman@suse.de> | 2015-05-14 18:17:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-05-14 20:55:51 -0400 |
commit | b0dc2b9bb4ab782115b964310518ee0b17784277 (patch) | |
tree | 9c5a6ec323e2854b2b72fe7765c66e26869ddb5c /mm | |
parent | b77017555ce514262abcb28a0ff3cc065d4acfb8 (diff) |
mm, numa: really disable NUMA balancing by default on single node machines
NUMA balancing is meant to be disabled by default on UMA machines but
the check is using nr_node_ids (highest node) instead of
num_online_nodes (online nodes).
The consequences are that a UMA machine with a node ID of 1 or higher
will enable NUMA balancing. This will incur useless overhead due to
minor faults with the impact depending on the workload. These are the
impact on the stats when running a kernel build on a single node machine
whose node ID happened to be 1:
vanilla patched
NUMA base PTE updates 5113158 0
NUMA huge PMD updates 643 0
NUMA page range updates 5442374 0
NUMA hint faults 2109622 0
NUMA hint local faults 2109622 0
NUMA hint local percent 100 100
NUMA pages migrated 0 0
Signed-off-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Rik van Riel <riel@redhat.com>
Cc: <stable@vger.kernel.org> [3.8+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/mempolicy.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c index ede26291d4aa..747743237d9f 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c | |||
@@ -2518,7 +2518,7 @@ static void __init check_numabalancing_enable(void) | |||
2518 | if (numabalancing_override) | 2518 | if (numabalancing_override) |
2519 | set_numabalancing_state(numabalancing_override == 1); | 2519 | set_numabalancing_state(numabalancing_override == 1); |
2520 | 2520 | ||
2521 | if (nr_node_ids > 1 && !numabalancing_override) { | 2521 | if (num_online_nodes() > 1 && !numabalancing_override) { |
2522 | pr_info("%s automatic NUMA balancing. " | 2522 | pr_info("%s automatic NUMA balancing. " |
2523 | "Configure with numa_balancing= or the " | 2523 | "Configure with numa_balancing= or the " |
2524 | "kernel.numa_balancing sysctl", | 2524 | "kernel.numa_balancing sysctl", |