[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171218094327.19562-4-mgorman@techsingularity.net>
Date: Mon, 18 Dec 2017 09:43:26 +0000
From: Mel Gorman <mgorman@...hsingularity.net>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Ingo Molnar <mingo@...hat.com>,
Matt Fleming <matt@...eblueprint.co.uk>,
Mel Gorman <mgorman@...hsingularity.net>,
LKML <linux-kernel@...r.kernel.org>
Subject: [PATCH 3/4] sched: Comment on why sync wakeups try to run on the current CPU
The sync wakeup logic in wake_affine_idle deserves a short description.
Signed-off-by: Mel Gorman <mgorman@...hsingularity.net>
---
kernel/sched/fair.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 392e08b364bd..95b1145bc38d 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5737,6 +5737,11 @@ wake_affine_idle(int this_cpu, int prev_cpu, int sync)
static int
wake_affine_sync(int this_cpu, int sync)
{
+ /*
+ * Consider stacking tasks if it's a sync wakeup and there is only
+ * one task on the runqueue. sync wakesups are expected to sleep
+ * either immediately or shortly after the wakeup.
+ */
if (sync && cpu_rq(this_cpu)->nr_running == 1)
return this_cpu;
--
2.15.0
Powered by blists - more mailing lists