From ec34dd43a0b708b58ff3aa3f4f579feefe2fd123 Mon Sep 17 00:00:00 2001 From: Stephen Dickey Date: Wed, 27 Apr 2022 17:07:35 -0700 Subject: [PATCH] sched/walt: use rq->clock_task from scheduler tick hook Since we are called from the main tick, rq clock task must have been updated very recently. Use it directly, instead of update_rq_clock_task() to avoid warnings. Change-Id: I8ea644cb28844b9ded6e45703aa72e72c21486f5 Signed-off-by: Stephen Dickey --- kernel/sched/walt/walt_rt.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/kernel/sched/walt/walt_rt.c b/kernel/sched/walt/walt_rt.c index 13926fcb5ab5..8952f2504f8c 100644 --- a/kernel/sched/walt/walt_rt.c +++ b/kernel/sched/walt/walt_rt.c @@ -48,15 +48,20 @@ static void long_running_rt_task_notifier(void *unused, struct rq *rq) return; } - if (rq_clock_task(rq) - + /* + * Since we are called from the main tick, rq clock task must have + * been updated very recently. Use it directly, instead of + * update_rq_clock_task() to avoid warnings. + */ + if (rq->clock_task - per_cpu(rt_task_arrival_time, cpu) > sysctl_sched_long_running_rt_task_ms * MSEC_TO_NSEC) { printk_deferred("RT task %s (%d) runtime > %u now=%llu task arrival time=%llu runtime=%llu\n", curr->comm, curr->pid, sysctl_sched_long_running_rt_task_ms * MSEC_TO_NSEC, - rq_clock_task(rq), + rq->clock_task, per_cpu(rt_task_arrival_time, cpu), - rq_clock_task(rq) - + rq->clock_task - per_cpu(rt_task_arrival_time, cpu)); BUG(); }