diff options
author | Alex Shi <alex.shi@linaro.org> | 2014-01-10 10:50:57 +0800 |
---|---|---|
committer | Alex Shi <alex.shi@linaro.org> | 2014-01-10 10:50:57 +0800 |
commit | 450cdfa9c5713551ab1438ab210679868b52a994 (patch) | |
tree | edd98f9698aa88af55a3a1ee3de62e52917c39ba /kernel/sched/rt.c | |
parent | bf78886fb6c4131885f84f3eaaf7474509d40e51 (diff) | |
parent | 8b4ed85b8404ffe7e10ee410c4df3968b86f0793 (diff) |
Merge remote-tracking branch 'stable/linux-3.10.y' into linux-linaro-lsk
Conflicts:
arch/arm64/kernel/smp.c
Signed-off-by: Alex Shi <alex.shi@linaro.org>
Diffstat (limited to 'kernel/sched/rt.c')
-rw-r--r-- | kernel/sched/rt.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 127a2c4cf4a..15334e6de83 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -964,6 +964,13 @@ inc_rt_prio_smp(struct rt_rq *rt_rq, int prio, int prev_prio) { struct rq *rq = rq_of_rt_rq(rt_rq); +#ifdef CONFIG_RT_GROUP_SCHED + /* + * Change rq's cpupri only if rt_rq is the top queue. + */ + if (&rq->rt != rt_rq) + return; +#endif if (rq->online && prio < prev_prio) cpupri_set(&rq->rd->cpupri, rq->cpu, prio); } @@ -973,6 +980,13 @@ dec_rt_prio_smp(struct rt_rq *rt_rq, int prio, int prev_prio) { struct rq *rq = rq_of_rt_rq(rt_rq); +#ifdef CONFIG_RT_GROUP_SCHED + /* + * Change rq's cpupri only if rt_rq is the top queue. + */ + if (&rq->rt != rt_rq) + return; +#endif if (rq->online && rt_rq->highest_prio.curr != prev_prio) cpupri_set(&rq->rd->cpupri, rq->cpu, rt_rq->highest_prio.curr); } |