17 lines
453 B
C++
17 lines
453 B
C++
#include "Panic.hpp"
|
|
|
|
void Panic(const char *meditationString, System::Registers) {
|
|
kerr << "=========== Kernel panic ===========" << Kt::newline;
|
|
kerr << meditationString << Kt::newline;
|
|
|
|
while (true) {
|
|
#if defined (__x86_64__)
|
|
asm ("cli");
|
|
asm ("hlt");
|
|
#elif defined (__aarch64__) || defined (__riscv)
|
|
asm ("wfi");
|
|
#elif defined (__loongarch64)
|
|
asm ("idle 0");
|
|
#endif
|
|
}
|
|
} |