According the comments before this line: * ksoftirqd time do not get accounted in cpu_softirq_time. And process in irqtime_account_irq() I guess the original attempt is to account ksoftirqd into system time instead of softirq time.
Signed-off-by: Alex Shi <alex....@linux.alibaba.com> Cc: Ingo Molnar <mi...@redhat.com> Cc: Peter Zijlstra <pet...@infradead.org> Cc: Frederic Weisbecker <fweis...@gmail.com> Cc: Wanpeng Li <wanpeng...@hotmail.com> Cc: Thomas Gleixner <t...@linutronix.de> Cc: linux-kernel@vger.kernel.org --- kernel/sched/cputime.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c index 2305ce89a26c..d78aee140957 100644 --- a/kernel/sched/cputime.c +++ b/kernel/sched/cputime.c @@ -378,7 +378,7 @@ static void irqtime_account_process_tick(struct task_struct *p, int user_tick, * So, we have to handle it separately here. * Also, p->stime needs to be updated for ksoftirqd. */ - account_system_index_time(p, cputime, CPUTIME_SOFTIRQ); + account_system_index_time(p, cputime, CPUTIME_SYSTEM); } else if (user_tick) { account_user_time(p, cputime); } else if (p == rq->idle) { -- 2.19.1.856.g8858448bb