OSDN Git Service

sched/core: Print out straggler tasks in sched_cpu_dying()
authorValentin Schneider <valentin.schneider@arm.com>
Wed, 13 Jan 2021 18:31:41 +0000 (18:31 +0000)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 22 Jan 2021 14:09:41 +0000 (15:09 +0100)
commit36c6e17bf16922935a5a0dd073d5b032d34aa73d
tree4f20b106f92b74f80d3b033512ef58ffad252ffe
parent9c7d9017a49fb8516c13b7bff59b7da2abed23e1
sched/core: Print out straggler tasks in sched_cpu_dying()

Since commit

  1cf12e08bc4d ("sched/hotplug: Consolidate task migration on CPU unplug")

tasks are expected to move themselves out of a out-going CPU. For most
tasks this will be done automagically via BALANCE_PUSH, but percpu kthreads
will have to cooperate and move themselves away one way or another.

Currently, some percpu kthreads (workqueues being a notable exemple) do not
cooperate nicely and can end up on an out-going CPU at the time
sched_cpu_dying() is invoked.

Print the dying rq's tasks to shed some light on the stragglers.

Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
Tested-by: Valentin Schneider <valentin.schneider@arm.com>
Link: https://lkml.kernel.org/r/20210113183141.11974-1-valentin.schneider@arm.com
kernel/sched/core.c