mirror of
https://github.com/torvalds/linux.git
synced 2026-07-31 11:37:06 +02:00
sched/walt: walt hooks skipped during rt throttling
Currently, walt maintains cra and adds demand when enqueue task happens and subtracts from it when dequeue happens. However, when an rt task is throttled, walt is not informed of the dequeue. This leads to a residual demand when the idle task switches in post throttling leading to walt accounting error. Remove that specific accounting check since it is hard to inform WALT of the throttle dequeue and unthrottle enqueue, until rt can be fixed to support walt accounting in the throttling case. Change-Id: If1416a61fbe3979253a42cb82990b7b13ad2c4eb Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
This commit is contained in:
parent
05cfb9a3e5
commit
6acd93ad48
|
|
@ -4152,7 +4152,6 @@ static void android_rvh_schedule(void *unused, struct task_struct *prev,
|
|||
{
|
||||
u64 wallclock;
|
||||
struct walt_task_struct *wts = (struct walt_task_struct *) prev->android_vendor_data1;
|
||||
struct walt_rq *wrq = (struct walt_rq *) rq->android_vendor_data1;
|
||||
|
||||
if (unlikely(walt_disabled))
|
||||
return;
|
||||
|
|
@ -4164,9 +4163,6 @@ static void android_rvh_schedule(void *unused, struct task_struct *prev,
|
|||
wts->last_sleep_ts = wallclock;
|
||||
walt_update_task_ravg(prev, rq, PUT_PREV_TASK, wallclock, 0);
|
||||
walt_update_task_ravg(next, rq, PICK_NEXT_TASK, wallclock, 0);
|
||||
if (is_idle_task(next) && wrq->walt_stats.cumulative_runnable_avg_scaled != 0)
|
||||
WALT_BUG(WALT_BUG_WALT, next, "next=idle cra non zero=%d\n",
|
||||
wrq->walt_stats.cumulative_runnable_avg_scaled);
|
||||
} else {
|
||||
walt_update_task_ravg(prev, rq, TASK_UPDATE, wallclock, 0);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user