diff options
Diffstat (limited to 'kernel/sched.c')
-rw-r--r-- | kernel/sched.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 3acbad8991a2..24ab80c28765 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -471,6 +471,7 @@ struct rt_rq { | |||
471 | #ifdef CONFIG_SMP | 471 | #ifdef CONFIG_SMP |
472 | unsigned long rt_nr_migratory; | 472 | unsigned long rt_nr_migratory; |
473 | int overloaded; | 473 | int overloaded; |
474 | struct plist_head pushable_tasks; | ||
474 | #endif | 475 | #endif |
475 | int rt_throttled; | 476 | int rt_throttled; |
476 | u64 rt_time; | 477 | u64 rt_time; |
@@ -2481,6 +2482,8 @@ void sched_fork(struct task_struct *p, int clone_flags) | |||
2481 | /* Want to start with kernel preemption disabled. */ | 2482 | /* Want to start with kernel preemption disabled. */ |
2482 | task_thread_info(p)->preempt_count = 1; | 2483 | task_thread_info(p)->preempt_count = 1; |
2483 | #endif | 2484 | #endif |
2485 | plist_node_init(&p->pushable_tasks, MAX_PRIO); | ||
2486 | |||
2484 | put_cpu(); | 2487 | put_cpu(); |
2485 | } | 2488 | } |
2486 | 2489 | ||
@@ -8237,6 +8240,7 @@ static void init_rt_rq(struct rt_rq *rt_rq, struct rq *rq) | |||
8237 | #ifdef CONFIG_SMP | 8240 | #ifdef CONFIG_SMP |
8238 | rt_rq->rt_nr_migratory = 0; | 8241 | rt_rq->rt_nr_migratory = 0; |
8239 | rt_rq->overloaded = 0; | 8242 | rt_rq->overloaded = 0; |
8243 | plist_head_init(&rq->rt.pushable_tasks, &rq->lock); | ||
8240 | #endif | 8244 | #endif |
8241 | 8245 | ||
8242 | rt_rq->rt_time = 0; | 8246 | rt_rq->rt_time = 0; |