sched: rt-group: deal with PI
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Wed, 13 Feb 2008 14:45:39 +0000 (15:45 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 13 Feb 2008 14:45:39 +0000 (15:45 +0100)
commit23b0fdfc9299b137bd126e9dc22f62a59dae546d
tree22019172c555109b69a73da76561d99d7776c4f7
parent4cf5d77a6eefaa7a464bc34e8cb767356f10fd74
sched: rt-group: deal with PI

Steven mentioned the fun case where a lock holding task will be throttled.

Simple fix: allow groups that have boosted tasks to run anyway.

If a runnable task in a throttled group gets boosted the dequeue/enqueue
done by rt_mutex_setprio() is enough to unthrottle the group.

This is ofcourse not quite correct. Two possible ways forward are:
  - second prio array for boosted tasks
  - boost to a prio ceiling (this would also work for deadline scheduling)

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched.c
kernel/sched_rt.c