Index: kernel/generic/include/console/console.h
===================================================================
--- kernel/generic/include/console/console.h	(revision 81983e397478462b29f24f7beae41f423f0fb920)
+++ kernel/generic/include/console/console.h	(revision e6b7b19876ea4d41fd960cac5e6b9d9a9ef7073a)
@@ -41,5 +41,4 @@
 extern indev_t *stdin;
 extern outdev_t *stdout;
-extern bool silent;
 
 extern indev_t *stdin_wire(void);
Index: kernel/generic/include/panic.h
===================================================================
--- kernel/generic/include/panic.h	(revision 81983e397478462b29f24f7beae41f423f0fb920)
+++ kernel/generic/include/panic.h	(revision e6b7b19876ea4d41fd960cac5e6b9d9a9ef7073a)
@@ -27,5 +27,5 @@
  */
 
-/** @addtogroup generic	
+/** @addtogroup generic
  * @{
  */
@@ -36,4 +36,5 @@
 #define KERN_PANIC_H_
 
+#include <typedefs.h>
 #include <stacktrace.h>
 #include <print.h>
@@ -42,4 +43,5 @@
 #	define panic(format, ...) \
 		do { \
+			silent = false; \
 			printf("Kernel panic in %s() at %s:%u.\n", \
 			    __func__, __FILE__, __LINE__); \
@@ -50,6 +52,11 @@
 #else
 #	define panic(format, ...) \
-		panic_printf("Kernel panic: " format "\n", ##__VA_ARGS__);
+		do { \
+			silent = false; \
+			panic_printf("Kernel panic: " format "\n", ##__VA_ARGS__); \
+		} while (0)
 #endif
+
+extern bool silent;
 
 extern void panic_printf(char *fmt, ...) __attribute__((noreturn));
Index: kernel/generic/src/console/console.c
===================================================================
--- kernel/generic/src/console/console.c	(revision 81983e397478462b29f24f7beae41f423f0fb920)
+++ kernel/generic/src/console/console.c	(revision e6b7b19876ea4d41fd960cac5e6b9d9a9ef7073a)
@@ -45,4 +45,5 @@
 #include <ipc/irq.h>
 #include <arch.h>
+#include <panic.h>
 #include <print.h>
 #include <putchar.h>
