diff --git a/kernel-src/lib/panic.c b/kernel-src/lib/panic.c index c7ceeaf1..8b580b09 100644 --- a/kernel-src/lib/panic.c +++ b/kernel-src/lib/panic.c @@ -6,6 +6,7 @@ __attribute__((noreturn)) void _panic(char *msg, context_t *ctx) { interrupt_set(false); + arch_smp_haltallothers(); printf("cpu%lu: Oops.\n", current_cpu_id()); if (msg) @@ -14,6 +15,5 @@ __attribute__((noreturn)) void _panic(char *msg, context_t *ctx) { if (ctx) PRINT_CTX(ctx); - arch_smp_haltallothers(); for (;;); }