diff options
Diffstat (limited to 'kernel/sched_rt.c')
-rw-r--r-- | kernel/sched_rt.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index b591b89710a4..1a2d8f0aa659 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c | |||
@@ -4,16 +4,24 @@ | |||
4 | */ | 4 | */ |
5 | 5 | ||
6 | #ifdef CONFIG_SMP | 6 | #ifdef CONFIG_SMP |
7 | |||
8 | /* | ||
9 | * The "RT overload" flag: it gets set if a CPU has more than | ||
10 | * one runnable RT task. | ||
11 | */ | ||
7 | static cpumask_t rt_overload_mask; | 12 | static cpumask_t rt_overload_mask; |
8 | static atomic_t rto_count; | 13 | static atomic_t rto_count; |
14 | |||
9 | static inline int rt_overloaded(void) | 15 | static inline int rt_overloaded(void) |
10 | { | 16 | { |
11 | return atomic_read(&rto_count); | 17 | return atomic_read(&rto_count); |
12 | } | 18 | } |
19 | |||
13 | static inline cpumask_t *rt_overload(void) | 20 | static inline cpumask_t *rt_overload(void) |
14 | { | 21 | { |
15 | return &rt_overload_mask; | 22 | return &rt_overload_mask; |
16 | } | 23 | } |
24 | |||
17 | static inline void rt_set_overload(struct rq *rq) | 25 | static inline void rt_set_overload(struct rq *rq) |
18 | { | 26 | { |
19 | rq->rt.overloaded = 1; | 27 | rq->rt.overloaded = 1; |
@@ -28,6 +36,7 @@ static inline void rt_set_overload(struct rq *rq) | |||
28 | wmb(); | 36 | wmb(); |
29 | atomic_inc(&rto_count); | 37 | atomic_inc(&rto_count); |
30 | } | 38 | } |
39 | |||
31 | static inline void rt_clear_overload(struct rq *rq) | 40 | static inline void rt_clear_overload(struct rq *rq) |
32 | { | 41 | { |
33 | /* the order here really doesn't matter */ | 42 | /* the order here really doesn't matter */ |