[linux-yocto] [PATCH 24/28] sched/numa: Decay ->wakee_flips instead of zeroing
Yang Shi
yang.shi at windriver.com
Mon Aug 18 13:45:34 PDT 2014
From: Rik van Riel <riel at redhat.com>
commit 096aa33863a5e48de52d2ff30e0801b7487944f4 upstream
Affine wakeups have the potential to interfere with NUMA placement.
If a task wakes up too many other tasks, affine wakeups will get
disabled.
However, regardless of how many other tasks it wakes up, it gets
re-enabled once a second, potentially interfering with NUMA
placement of other tasks.
By decaying wakee_wakes in half instead of zeroing it, we can avoid
that problem for some workloads.
Signed-off-by: Rik van Riel <riel at redhat.com>
Signed-off-by: Peter Zijlstra <peterz at infradead.org>
Cc: chegu_vinod at hp.com
Cc: umgwanakikbuti at gmail.com
Link: http://lkml.kernel.org/r/20140516001332.67f91af2@annuminas.surriel.com
Signed-off-by: Ingo Molnar <mingo at kernel.org>
Signed-off-by: Yang Shi <yang.shi at windriver.com>
---
kernel/sched/fair.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 0afd990..bd46512 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -4052,7 +4052,7 @@ static void record_wakee(struct task_struct *p)
* about the loss.
*/
if (jiffies > current->wakee_flip_decay_ts + HZ) {
- current->wakee_flips = 0;
+ current->wakee_flips >>= 1;
current->wakee_flip_decay_ts = jiffies;
}
--
2.0.2
More information about the linux-yocto
mailing list