]> www.infradead.org Git - users/dwmw2/linux.git/commit
sched/psi: Add PSI_IRQ to track IRQ/SOFTIRQ pressure
authorChengming Zhou <zhouchengming@bytedance.com>
Thu, 25 Aug 2022 16:41:08 +0000 (00:41 +0800)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 9 Sep 2022 09:08:32 +0000 (11:08 +0200)
commit52b1364ba0b105122d6de0e719b36db705011ac1
treea6601f432fbe2c006addc068eab9b98febf0449c
parent71dbdde7914d32e86f01ac1f6e54e964c9dfdbd9
sched/psi: Add PSI_IRQ to track IRQ/SOFTIRQ pressure

Now PSI already tracked workload pressure stall information for
CPU, memory and IO. Apart from these, IRQ/SOFTIRQ could have
obvious impact on some workload productivity, such as web service
workload.

When CONFIG_IRQ_TIME_ACCOUNTING, we can get IRQ/SOFTIRQ delta time
from update_rq_clock_task(), in which we can record that delta
to CPU curr task's cgroups as PSI_IRQ_FULL status.

Note we don't use PSI_IRQ_SOME since IRQ/SOFTIRQ always happen in
the current task on the CPU, make nothing productive could run
even if it were runnable, so we only use PSI_IRQ_FULL.

Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Link: https://lore.kernel.org/r/20220825164111.29534-8-zhouchengming@bytedance.com
Documentation/admin-guide/cgroup-v2.rst
include/linux/psi_types.h
kernel/cgroup/cgroup.c
kernel/sched/core.c
kernel/sched/psi.c
kernel/sched/stats.h