summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/soc/google/vh/kernel/sched/sched_priv.h8
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
+}