diff options
| author | Breno Leitao <leitao@debian.org> | 2026-06-30 09:15:21 -0700 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-06-30 06:36:53 -1000 |
| commit | f7dc93388946dacae5ddf6bdf55822f066798a40 (patch) | |
| tree | 3c1eb08a2818525035044620d03e65bdfe381077 /tools/perf/scripts/python/stackcollapse.py | |
| parent | 7ddfa24d3f12ab9f3ac0e0b4e8e573ff45574d86 (diff) | |
workqueue: trigger a single-CPU backtrace for stalled pools
When a CPU pool is stalled with no running worker, the task occupying the
CPU may not be a workqueue worker at all. Trigger a single-CPU backtrace
for the stalled CPU to capture what it is currently executing.
The CPU is snapshotted under pool->lock and the backtrace is triggered
after releasing the lock to avoid any potential issues with NMI delivery.
Skip the backtrace when the CPU is offline. A pool disassociated by CPU
hotplug keeps its pool->cpu, and an NMI to an offline CPU is never acked,
so nmi_trigger_cpumask_backtrace() would busy-wait for its full timeout
in the watchdog's timer context.
Suggested-by: Petr Mladek <pmladek@suse.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
