mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 03:36:19 +00:00
sched: clean up the wakeup preempt check, #2
clean up the preemption check to not use unnecessary 64-bit variables. This improves code size: text data bss dec hex filename 44227 3326 36 47589 b9e5 sched.o.before 44201 3326 36 47563 b9cb sched.o.after Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
77d9cc44b5
commit
502d26b524
1 changed files with 2 additions and 3 deletions
|
@ -837,7 +837,7 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p)
|
|||
struct task_struct *curr = rq->curr;
|
||||
struct cfs_rq *cfs_rq = task_cfs_rq(curr);
|
||||
struct sched_entity *se = &curr->se, *pse = &p->se;
|
||||
s64 delta, gran;
|
||||
unsigned long gran;
|
||||
|
||||
if (unlikely(rt_prio(p->prio))) {
|
||||
update_rq_clock(rq);
|
||||
|
@ -860,12 +860,11 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p)
|
|||
pse = parent_entity(pse);
|
||||
}
|
||||
|
||||
delta = se->vruntime - pse->vruntime;
|
||||
gran = sysctl_sched_wakeup_granularity;
|
||||
if (unlikely(se->load.weight != NICE_0_LOAD))
|
||||
gran = calc_delta_fair(gran, &se->load);
|
||||
|
||||
if (delta > gran)
|
||||
if (pse->vruntime + gran < se->vruntime)
|
||||
resched_task(curr);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue