summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/kern_shutdown.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c
index 4b27d45..bd3c7aa 100644
--- a/sys/kern/kern_shutdown.c
+++ b/sys/kern/kern_shutdown.c
@@ -496,8 +496,14 @@ shutdown_reset(void *junk, int howto)
* generally, threads busy-waiting, with this spinlock held,
* and waiting for responses by threads on other CPUs
* (ie. smp_tlb_shootdown()).
+ *
+ * For the !SMP case it just needs to handle the former problem.
*/
+#ifdef SMP
mtx_lock_spin(&smp_ipi_mtx);
+#else
+ spinlock_enter();
+#endif
/* cpu_boot(howto); */ /* doesn't do anything at the moment */
cpu_reset();
OpenPOWER on IntegriCloud