diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 1e9fcdbb0247..ee7bc7b7a780 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -4073,20 +4073,19 @@ place_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int initial) thresh >>= 1; vruntime -= thresh; - if (entity_is_task(se)) { - if (per_task_boost(task_of(se)) == - TASK_BOOST_STRICT_MAX) - vruntime -= sysctl_sched_latency; #ifdef CONFIG_SCHED_WALT - else if (walt_low_latency_task(task_of(se)) || + if (entity_is_task(se)) { + if ((per_task_boost(task_of(se)) == + TASK_BOOST_STRICT_MAX) || + walt_low_latency_task(task_of(se)) || task_rtg_high_prio(task_of(se))) { vruntime -= sysctl_sched_latency; vruntime -= thresh; se->vruntime = vruntime; return; } -#endif } +#endif } /* ensure we never gain time by being placed backwards. */