From c5e55f4737fcd0f65661dd113dc061626af9d388 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Mon, 22 Oct 2018 13:07:06 +0200 Subject: [PATCH] Use UD2 instead of CLI;HLT for CRASH(). This way the kernel prints out a nice register dump so we can find out where we crashed. --- Kernel/kassert.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Kernel/kassert.h b/Kernel/kassert.h index 1ddabe6362..621aa9f4ec 100644 --- a/Kernel/kassert.h +++ b/Kernel/kassert.h @@ -2,7 +2,7 @@ #include "VGA.h" -#define CRASH() do { asm volatile("cli;hlt"); } while(0) +#define CRASH() do { asm volatile("ud2"); } while(0) #define ASSERT(x) do { if (!(x)) { kprintf("ASSERTION FAILED: " #x "\n%s:%u in %s\n", __FILE__, __LINE__, __PRETTY_FUNCTION__); CRASH(); } } while(0) #define RELEASE_ASSERT(x) do { if (!(x)) CRASH(); } while(0) #define ASSERT_NOT_REACHED() ASSERT(false)