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 <quic_dickey@quicinc.com>
This commit is contained in:
Stephen Dickey 2022-04-27 17:07:35 -07:00 committed by Rishabh Bhatnagar
parent ec2d7224f4
commit ec34dd43a0

View File

@ -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();
}