diff options
author | Con Kolivas <kernel@kolivas.org> | 2016-11-04 11:21:05 +1100 |
---|---|---|
committer | Con Kolivas <kernel@kolivas.org> | 2016-11-05 09:00:04 +1100 |
commit | d5687ba613fae0106e62c490ca9997e06907bc41 (patch) | |
tree | 11ff7c93eb9cbc16f7b5771a814a7325c09e59c6 /kernel | |
parent | 756bf8aba48d66c04b68d99c3bda6e75227b00f3 (diff) |
Don't reschedule balance across nodes unless a CPU is idle.
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/sched/MuQSS.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/sched/MuQSS.c b/kernel/sched/MuQSS.c index 7b6c6942e81d..e3c8010e0e09 100644 --- a/kernel/sched/MuQSS.c +++ b/kernel/sched/MuQSS.c @@ -3494,6 +3494,12 @@ static inline struct task_struct * is locked so entries will always be accurate. */ if (!sched_interactive) { + /* + * Don't reschedule balance across nodes unless the CPU + * is idle. + */ + if (edt != idle && rq->cpu_locality[other_rq->cpu] > 3) + break; if (entries <= best_entries) continue; } else if (!entries) |