Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 288749
b: refs/heads/master
c: 7abc63b
h: refs/heads/master
i:
  288747: 0928df5
v: v3
  • Loading branch information
Peter Zijlstra authored and Ingo Molnar committed Mar 1, 2012
1 parent 693d115 commit efe174d
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 3 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: 42c62a589f1ccbf38a02cb732231f9c2fccc5ab0
refs/heads/master: 7abc63b1bd412f7655b62ef3e35c3c11c5134636
20 changes: 18 additions & 2 deletions trunk/kernel/sched/rt.c
Original file line number Diff line number Diff line change
Expand Up @@ -857,8 +857,24 @@ static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)
return 0;

if (rt_rq->rt_time > runtime) {
rt_rq->rt_throttled = 1;
printk_once(KERN_WARNING "sched: RT throttling activated\n");
struct rt_bandwidth *rt_b = sched_rt_bandwidth(rt_rq);

/*
* Don't actually throttle groups that have no runtime assigned
* but accrue some time due to boosting.
*/
if (likely(rt_b->rt_runtime)) {
rt_rq->rt_throttled = 1;
printk_once(KERN_WARNING "sched: RT throttling activated\n");
} else {
/*
* In case we did anyway, make it go away,
* replenishment is a joke, since it will replenish us
* with exactly 0 ns.
*/
rt_rq->rt_time = 0;
}

if (rt_rq_throttled(rt_rq)) {
sched_rt_rq_dequeue(rt_rq);
return 1;
Expand Down

0 comments on commit efe174d

Please sign in to comment.