diff options
| author | Richard Qin <richard.qin.x@gmail.com> | 2026-05-02 01:32:13 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.x@gmail.com> | 2026-05-02 01:32:13 +0800 |
| commit | e1561995d4064847de60daf5342f8e7ff69e7e30 (patch) | |
| tree | d71f1a0dc396f836a00da7e51960d4f1401d85ae /na/lib/panic.cc | |
| parent | 5b8aaa2c203e456d2ca133b3403224a98aef2816 (diff) | |
| download | lume-e1561995d4064847de60daf5342f8e7ff69e7e30.tar.gz lume-e1561995d4064847de60daf5342f8e7ff69e7e30.tar.xz | |
feat: implement kernel logging and formatted output subsystems
Diffstat (limited to 'na/lib/panic.cc')
| -rw-r--r-- | na/lib/panic.cc | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/na/lib/panic.cc b/na/lib/panic.cc deleted file mode 100644 index 753f910..0000000 --- a/na/lib/panic.cc +++ /dev/null @@ -1,34 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0-or-later */ -/* Copyright (C) 2026 Richard Qin */ - -/* - * Kernel Panic — minimal fatal error handler. - * - * Before console_init(): silent death (no UART). - * After console_init(): prints message then halts. - * - * Reference: docs/specs/global_init.md §6 - */ - -#include <lume/types.h> -#include <lume/addr.h> -#include <arch/cpu.h> -#include <lume/console.h> - -extern "C" [[noreturn]] void kernel_panic(const char* msg, const char* detail) { - arch::cpu::intr_off(); - - early_puts("\n*** KERNEL PANIC: "); - if (msg) { - early_puts(msg); - } - if (detail) { - early_puts(": "); - early_puts(detail); - } - early_puts(" ***\n"); - - while (true) { - arch::cpu::halt_until_interrupt(); - } -} |
