Commit 763a744e authored by Yafang Shao's avatar Yafang Shao Committed by Peter Zijlstra
Browse files

sched: Don't account irq time if sched_clock_irqtime is disabled



sched_clock_irqtime may be disabled due to the clock source, in which case
IRQ time should not be accounted. Let's add a conditional check to avoid
unnecessary logic.

Signed-off-by: default avatarYafang Shao <laoar.shao@gmail.com>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: default avatarMichal Koutný <mkoutny@suse.com>
Reviewed-by: default avatarVincent Guittot <vincent.guittot@linaro.org>
Link: https://lore.kernel.org/r/20250103022409.2544-3-laoar.shao@gmail.com
parent 8722903c
Loading
Loading
Loading
Loading
+23 −21
Original line number Diff line number Diff line
@@ -740,6 +740,7 @@ static void update_rq_clock_task(struct rq *rq, s64 delta)
	s64 __maybe_unused steal = 0, irq_delta = 0;

#ifdef CONFIG_IRQ_TIME_ACCOUNTING
	if (irqtime_enabled()) {
		irq_delta = irq_time_read(cpu_of(rq)) - rq->prev_irq_time;

		/*
@@ -763,6 +764,7 @@ static void update_rq_clock_task(struct rq *rq, s64 delta)
		rq->prev_irq_time += irq_delta;
		delta -= irq_delta;
		delayacct_irq(rq->curr, irq_delta);
	}
#endif
#ifdef CONFIG_PARAVIRT_TIME_ACCOUNTING
	if (static_key_false((&paravirt_steal_rq_enabled))) {