diff options
-rw-r--r-- | drivers/soc/google/vh/kernel/sched/sched_priv.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/soc/google/vh/kernel/sched/sched_priv.h b/drivers/soc/google/vh/kernel/sched/sched_priv.h index 03cfe72ff..02855c02e 100644 --- a/drivers/soc/google/vh/kernel/sched/sched_priv.h +++ b/drivers/soc/google/vh/kernel/sched/sched_priv.h @@ -497,6 +497,9 @@ static inline bool uclamp_can_ignore_uclamp_min(struct rq *rq, if (get_uclamp_fork_reset(p, true)) return false; + if (p->in_iowait && uclamp_boosted(p)) + return false; + if (rt_task(p)) return task_util(p) < sysctl_sched_uclamp_min_filter_rt; @@ -572,6 +575,9 @@ static inline bool uclamp_can_ignore_uclamp_max(struct rq *rq, if (get_uclamp_fork_reset(p, true)) return false; + if (p->in_iowait && uclamp_boosted(p)) + return false; + /* * If util has crossed uclamp_max threshold, then we have to ensure * this is always enforced. @@ -726,4 +732,4 @@ static inline void dec_adpf_counter(struct task_struct *p, atomic_t *num_adpf_ta return; atomic_dec(num_adpf_tasks); -}
\ No newline at end of file +} |