diff options
| author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2012-05-10 18:26:27 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2012-05-14 09:05:26 -0400 |
| commit | 870a0bb5d636156502769233d02a0d5791d4366a (patch) | |
| tree | c008809e111a3487af2c27f8c105200950f11671 | |
| parent | 04f733b4afac5dc93ae9b0a8703c60b87def491e (diff) | |
sched/numa: Don't scale the imbalance
It's far too easy to get ridiculously large imbalance pct when you
scale it like that. Use a fixed 125% for now.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/n/tip-zsriaft1dv7hhboyrpvqjy6s@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
| -rw-r--r-- | kernel/sched/core.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 24922b7ff567..6883d998dc38 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c | |||
| @@ -6261,11 +6261,6 @@ static int *sched_domains_numa_distance; | |||
| 6261 | static struct cpumask ***sched_domains_numa_masks; | 6261 | static struct cpumask ***sched_domains_numa_masks; |
| 6262 | static int sched_domains_curr_level; | 6262 | static int sched_domains_curr_level; |
| 6263 | 6263 | ||
| 6264 | static inline unsigned long numa_scale(unsigned long x, int level) | ||
| 6265 | { | ||
| 6266 | return x * sched_domains_numa_distance[level] / sched_domains_numa_scale; | ||
| 6267 | } | ||
| 6268 | |||
| 6269 | static inline int sd_local_flags(int level) | 6264 | static inline int sd_local_flags(int level) |
| 6270 | { | 6265 | { |
| 6271 | if (sched_domains_numa_distance[level] > REMOTE_DISTANCE) | 6266 | if (sched_domains_numa_distance[level] > REMOTE_DISTANCE) |
| @@ -6286,7 +6281,7 @@ sd_numa_init(struct sched_domain_topology_level *tl, int cpu) | |||
| 6286 | .min_interval = sd_weight, | 6281 | .min_interval = sd_weight, |
| 6287 | .max_interval = 2*sd_weight, | 6282 | .max_interval = 2*sd_weight, |
| 6288 | .busy_factor = 32, | 6283 | .busy_factor = 32, |
| 6289 | .imbalance_pct = 100 + numa_scale(25, level), | 6284 | .imbalance_pct = 125, |
| 6290 | .cache_nice_tries = 2, | 6285 | .cache_nice_tries = 2, |
| 6291 | .busy_idx = 3, | 6286 | .busy_idx = 3, |
| 6292 | .idle_idx = 2, | 6287 | .idle_idx = 2, |
