Index: kernel/generic/src/interrupt/interrupt.c
===================================================================
--- kernel/generic/src/interrupt/interrupt.c	(revision 328cc3135d655fb0dbd9ff14e23012c679626374)
+++ kernel/generic/src/interrupt/interrupt.c	(revision b92a0ee0b9b93ef0d525013de4a657a5b969bae6)
@@ -54,4 +54,5 @@
 #include <proc/thread.h>
 #include <arch/cycle.h>
+#include <arch/stack.h>
 #include <str.h>
 #include <trace.h>
@@ -222,8 +223,7 @@
 	/*
 	 * The istate structure should be right at the bottom of the kernel
-	 * stack.
+	 * memory stack.
 	 */
-	return (istate_t *) ((uint8_t *)
-	    thread->kstack + STACK_SIZE - sizeof(istate_t));
+	return (istate_t *) &thread->kstack[MEM_STACK_SIZE - sizeof(istate_t)];
 }
 
