diff --git a/kernel/arch/i386/system.c b/kernel/arch/i386/system.c index d69b2af10..4a1a1979c 100644 --- a/kernel/arch/i386/system.c +++ b/kernel/arch/i386/system.c @@ -286,6 +286,9 @@ PRIVATE void ser_debug(int c) switch(c) { + case 'Q': + minix_shutdown(NULL); + NOT_REACHABLE; case '1': ser_dump_proc(); break; diff --git a/kernel/debug.h b/kernel/debug.h index b59e738a7..3b1863155 100644 --- a/kernel/debug.h +++ b/kernel/debug.h @@ -69,7 +69,7 @@ #define vmassert(t) { } #endif -#define NOT_REACHABLE(__x) do { \ +#define NOT_REACHABLE do { \ kprintf("NOT_REACHABLE at %s:%d\n", __FILE__, __LINE__); \ minix_panic("execution at an unexpected location\n", NO_NUM); \ for(;;); \ diff --git a/kernel/main.c b/kernel/main.c index 8a76110f7..988fb1f71 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -251,6 +251,7 @@ PUBLIC void main() #endif restart(); + NOT_REACHABLE; } /*===========================================================================*