Index: kernel/generic/include/interrupt.h
===================================================================
--- kernel/generic/include/interrupt.h	(revision 12bf33aabbb4c9c0de96d2a50f4601aff4642be2)
+++ kernel/generic/include/interrupt.h	(revision cf240cbc0d420fb62b7b3b5c41946295fe7ff11a)
@@ -42,4 +42,5 @@
 #include <arch.h>
 #include <ddi/irq.h>
+#include <stacktrace.h>
 
 typedef void (* iroutine)(int n, istate_t *istate);
@@ -49,6 +50,8 @@
 	if (istate_from_uspace(istate)) { \
 		task_t *task = TASK; \
-		printf("Task %s (%" PRIu64 ") killed due to an exception at %p: ", task->name, task->taskid, istate_get_pc(istate)); \
-		printf(fmt "\n", ##__VA_ARGS__); \
+		printf("Task %s (%" PRIu64 ") killed due to an exception at " \
+		    "program counter %p.\n", task->name, task->taskid, istate_get_pc(istate)); \
+		stack_trace_istate(istate); \
+		printf("Kill message: " fmt "\n", ##__VA_ARGS__); \
 		task_kill(task->taskid); \
 		thread_exit(); \
