diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-11-24 11:37:12 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-11-24 11:37:12 -0500 |
commit | 64b7482de253c10efa2589a6212e3d2093a3efc7 (patch) | |
tree | 0745dd3684cbe9c17b95b601bad3605c22459f41 /kernel | |
parent | 957ad0166e9f76a8561dafa5e14ef5bd3f5e9a3b (diff) | |
parent | 50ee91765e25e7967a7b69cd5cc2bcab85e2eeb8 (diff) |
Merge branch 'sched/rt' into sched/core
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/sched.c | 2 | ||||
-rw-r--r-- | kernel/sched_rt.c | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index a6085d5166dd..338340a3fb89 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -2806,7 +2806,7 @@ static int double_lock_balance(struct rq *this_rq, struct rq *busiest) | |||
2806 | return ret; | 2806 | return ret; |
2807 | } | 2807 | } |
2808 | 2808 | ||
2809 | static void double_unlock_balance(struct rq *this_rq, struct rq *busiest) | 2809 | static inline void double_unlock_balance(struct rq *this_rq, struct rq *busiest) |
2810 | __releases(busiest->lock) | 2810 | __releases(busiest->lock) |
2811 | { | 2811 | { |
2812 | spin_unlock(&busiest->lock); | 2812 | spin_unlock(&busiest->lock); |
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index d9ba9d5f99d6..2bdd44423599 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c | |||
@@ -537,13 +537,13 @@ static void update_curr_rt(struct rq *rq) | |||
537 | for_each_sched_rt_entity(rt_se) { | 537 | for_each_sched_rt_entity(rt_se) { |
538 | rt_rq = rt_rq_of_se(rt_se); | 538 | rt_rq = rt_rq_of_se(rt_se); |
539 | 539 | ||
540 | spin_lock(&rt_rq->rt_runtime_lock); | ||
541 | if (sched_rt_runtime(rt_rq) != RUNTIME_INF) { | 540 | if (sched_rt_runtime(rt_rq) != RUNTIME_INF) { |
541 | spin_lock(&rt_rq->rt_runtime_lock); | ||
542 | rt_rq->rt_time += delta_exec; | 542 | rt_rq->rt_time += delta_exec; |
543 | if (sched_rt_runtime_exceeded(rt_rq)) | 543 | if (sched_rt_runtime_exceeded(rt_rq)) |
544 | resched_task(curr); | 544 | resched_task(curr); |
545 | spin_unlock(&rt_rq->rt_runtime_lock); | ||
545 | } | 546 | } |
546 | spin_unlock(&rt_rq->rt_runtime_lock); | ||
547 | } | 547 | } |
548 | } | 548 | } |
549 | 549 | ||
@@ -910,7 +910,8 @@ static void put_prev_task_rt(struct rq *rq, struct task_struct *p) | |||
910 | #define RT_MAX_TRIES 3 | 910 | #define RT_MAX_TRIES 3 |
911 | 911 | ||
912 | static int double_lock_balance(struct rq *this_rq, struct rq *busiest); | 912 | static int double_lock_balance(struct rq *this_rq, struct rq *busiest); |
913 | static void double_unlock_balance(struct rq *this_rq, struct rq *busiest); | 913 | static inline void double_unlock_balance(struct rq *this_rq, |
914 | struct rq *busiest); | ||
914 | 915 | ||
915 | static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep); | 916 | static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep); |
916 | 917 | ||