aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--litmus/sched_mc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/litmus/sched_mc.c b/litmus/sched_mc.c
index 2d0e8da9237..3034878b0ed 100644
--- a/litmus/sched_mc.c
+++ b/litmus/sched_mc.c
@@ -1262,7 +1262,8 @@ static void process_signals(struct cpu_entry *entry)
1262 /* A higher-priority task may exist */ 1262 /* A higher-priority task may exist */
1263 STRACE("Reading preempt signal\n"); 1263 STRACE("Reading preempt signal\n");
1264 1264
1265 if (mc_preempt_needed(ce->domain, ce->server.linked)) { 1265 if (ce->server.state == SS_ACTIVE &&
1266 mc_preempt_needed(ce->domain, ce->server.linked)) {
1266 preempt_crit(ce->domain, ce); 1267 preempt_crit(ce->domain, ce);
1267 raw_spin_unlock(dom->lock); 1268 raw_spin_unlock(dom->lock);
1268 if (!is_ghost(ce->server.linked)) { 1269 if (!is_ghost(ce->server.linked)) {