diff options
| author | Bjoern Brandenburg <bbb@mpi-sws.org> | 2015-08-09 07:18:54 -0400 |
|---|---|---|
| committer | Bjoern Brandenburg <bbb@mpi-sws.org> | 2015-08-09 07:20:32 -0400 |
| commit | 2720985a7f2141baed0fcf97f3ffddbf25442d9d (patch) | |
| tree | 409423b4cbdff4c92f310f2fc78948be8f72298e /kernel | |
| parent | c14af815369241598308018ddec195605c058839 (diff) | |
Don't call set_tsk_need_resched() on remote LITMUS^RT task
This patch fixes a BUG_ON() in litmus/preempt.c.
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched/core.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 60592df6ec1b..fc59abe463e8 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c | |||
| @@ -570,6 +570,11 @@ void resched_curr(struct rq *rq) | |||
| 570 | set_tsk_need_resched(curr); | 570 | set_tsk_need_resched(curr); |
| 571 | set_preempt_need_resched(); | 571 | set_preempt_need_resched(); |
| 572 | return; | 572 | return; |
| 573 | } else if (is_realtime(curr)) { | ||
| 574 | /* Cannot call set_tsk_need_resched() on LITMUS^RT task | ||
| 575 | * on remote core. Only policy plugins may do this via | ||
| 576 | * litmus_reschedule(). */ | ||
| 577 | return; | ||
| 573 | } | 578 | } |
| 574 | 579 | ||
| 575 | if (set_nr_and_not_polling(curr)) | 580 | if (set_nr_and_not_polling(curr)) |
