Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 191393
b: refs/heads/master
c: 13814d4
h: refs/heads/master
i:
  191391: be89796
v: v3
  • Loading branch information
Mike Galbraith authored and Ingo Molnar committed Mar 11, 2010
1 parent 7054130 commit cf86396
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 24 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c6ee36c423c3ed1fb86bb3eabba9fc256a300d16
refs/heads/master: 13814d42e45dfbe845a0bbe5184565d9236896ae
28 changes: 11 additions & 17 deletions trunk/kernel/sched_fair.c
Original file line number Diff line number Diff line change
Expand Up @@ -1583,24 +1583,18 @@ wakeup_gran(struct sched_entity *curr, struct sched_entity *se)
/*
* Since its curr running now, convert the gran from real-time
* to virtual-time in his units.
*
* By using 'se' instead of 'curr' we penalize light tasks, so
* they get preempted easier. That is, if 'se' < 'curr' then
* the resulting gran will be larger, therefore penalizing the
* lighter, if otoh 'se' > 'curr' then the resulting gran will
* be smaller, again penalizing the lighter task.
*
* This is especially important for buddies when the leftmost
* task is higher priority than the buddy.
*/
if (sched_feat(ASYM_GRAN)) {
/*
* By using 'se' instead of 'curr' we penalize light tasks, so
* they get preempted easier. That is, if 'se' < 'curr' then
* the resulting gran will be larger, therefore penalizing the
* lighter, if otoh 'se' > 'curr' then the resulting gran will
* be smaller, again penalizing the lighter task.
*
* This is especially important for buddies when the leftmost
* task is higher priority than the buddy.
*/
if (unlikely(se->load.weight != NICE_0_LOAD))
gran = calc_delta_fair(gran, se);
} else {
if (unlikely(curr->load.weight != NICE_0_LOAD))
gran = calc_delta_fair(gran, curr);
}
if (unlikely(se->load.weight != NICE_0_LOAD))
gran = calc_delta_fair(gran, se);

return gran;
}
Expand Down
6 changes: 0 additions & 6 deletions trunk/kernel/sched_features.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,6 @@ SCHED_FEAT(START_DEBIT, 1)
*/
SCHED_FEAT(WAKEUP_PREEMPT, 1)

/*
* When converting the wakeup granularity to virtual time, do it such
* that heavier tasks preempting a lighter task have an edge.
*/
SCHED_FEAT(ASYM_GRAN, 1)

/*
* Based on load and program behaviour, see if it makes sense to place
* a newly woken task on the same cpu as the task that woke it --
Expand Down

0 comments on commit cf86396

Please sign in to comment.