---
kern/sched_prim.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/kern/sched_prim.c b/kern/sched_prim.c
index dd0f492b..f7557124 100644
--- a/kern/sched_prim.c
+++ b/kern/sched_prim.c
@@ -1266,6 +1266,8 @@ void thread_setrun(
processor->state = PROCESSOR_DISPATCHING;
simple_unlock(&pset->idle_lock);
processor_unlock(processor);
+ if (processor != current_processor())
+ cause_ast_check(processor);
return;
}
simple_unlock(&pset->idle_lock);
@@ -1283,6 +1285,8 @@ void thread_setrun(
processor->next_thread = th;
processor->state = PROCESSOR_DISPATCHING;
simple_unlock(&pset->idle_lock);
+ if (processor != current_processor())
+ cause_ast_check(processor);
return;
}
simple_unlock(&pset->idle_lock);
@@ -1321,6 +1325,8 @@ void thread_setrun(
processor->state = PROCESSOR_DISPATCHING;
simple_unlock(&pset->idle_lock);
processor_unlock(processor);
+ if (processor != current_processor())
+ cause_ast_check(processor);
return;
}
simple_unlock(&pset->idle_lock);
--
2.40.1