mirror of
https://github.com/torvalds/linux.git
synced 2026-10-23 15:32:04 +02:00
sched/eevdf: Handle more short slice waking cases
Handle better the cases with several short slice tasks waking up simultaneously. Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://patch.msgid.link/20260921152238.3804392-4-vincent.guittot@linaro.org
This commit is contained in:
parent
4bf32ec332
commit
d2e0100827
|
|
@ -9836,8 +9836,14 @@ static inline bool set_preempt_buddy(struct cfs_rq *cfs_rq, struct sched_entity
|
|||
|
||||
static inline bool set_short_buddy(struct cfs_rq *cfs_rq, struct sched_entity *pse)
|
||||
{
|
||||
if (cfs_rq->next && cfs_rq->next->slice < pse->slice)
|
||||
return false;
|
||||
if (cfs_rq->next) {
|
||||
if (cfs_rq->next->slice < pse->slice)
|
||||
return false;
|
||||
|
||||
if (cfs_rq->next->slice == pse->slice &&
|
||||
entity_before(cfs_rq->next, pse))
|
||||
return false;
|
||||
}
|
||||
|
||||
set_next_buddy(cfs_rq, pse);
|
||||
return true;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user