Index: kernel/arch/amd64/src/debugger.c
===================================================================
--- kernel/arch/amd64/src/debugger.c	(revision b0b2ac1f84a3b0e8bfe6e96b3a01b9159ef4239f)
+++ kernel/arch/amd64/src/debugger.c	(revision b3b7e14a1e27b36c3c59ce41e9bc3060bdc881fd)
@@ -333,7 +333,10 @@
 #endif /* CONFIG_KCONSOLE */
 	
-	exc_register(VECTOR_DEBUG, "debugger", debug_exception);
+	exc_register(VECTOR_DEBUG, "debugger", true,
+	    debug_exception);
+	
 #ifdef CONFIG_SMP
-	exc_register(VECTOR_DEBUG_IPI, "debugger_smp", debug_ipi);
+	exc_register(VECTOR_DEBUG_IPI, "debugger_smp", true,
+	    debug_ipi);
 #endif /* CONFIG_SMP */
 }
Index: kernel/arch/amd64/src/interrupt.c
===================================================================
--- kernel/arch/amd64/src/interrupt.c	(revision b0b2ac1f84a3b0e8bfe6e96b3a01b9159ef4239f)
+++ kernel/arch/amd64/src/interrupt.c	(revision b3b7e14a1e27b36c3c59ce41e9bc3060bdc881fd)
@@ -199,24 +199,24 @@
 void interrupt_init(void)
 {
-	int i;
+	unsigned int i;
 	
 	for (i = 0; i < IVT_ITEMS; i++)
-		exc_register(i, "null", (iroutine) null_interrupt);
+		exc_register(i, "null", false, (iroutine_t) null_interrupt);
 	
 	for (i = 0; i < IRQ_COUNT; i++) {
 		if ((i != IRQ_PIC_SPUR) && (i != IRQ_PIC1))
-			exc_register(IVT_IRQBASE + i, "irq",
-			    (iroutine) irq_interrupt);
+			exc_register(IVT_IRQBASE + i, "irq", true,
+			    (iroutine_t) irq_interrupt);
 	}
 	
-	exc_register(0, "de_fault", (iroutine) de_fault);
-	exc_register(7, "nm_fault", (iroutine) nm_fault);
-	exc_register(12, "ss_fault", (iroutine) ss_fault);
-	exc_register(13, "gp_fault", (iroutine) gp_fault);
-	exc_register(14, "ident_mapper", (iroutine) ident_page_fault);
+	exc_register(0, "de_fault", true, (iroutine_t) de_fault);
+	exc_register(7, "nm_fault", true, (iroutine_t) nm_fault);
+	exc_register(12, "ss_fault", true, (iroutine_t) ss_fault);
+	exc_register(13, "gp_fault", true, (iroutine_t) gp_fault);
+	exc_register(14, "ident_mapper", true, (iroutine_t) ident_page_fault);
 	
 #ifdef CONFIG_SMP
-	exc_register(VECTOR_TLB_SHOOTDOWN_IPI, "tlb_shootdown",
-	    (iroutine) tlb_shootdown_ipi);
+	exc_register(VECTOR_TLB_SHOOTDOWN_IPI, "tlb_shootdown", true,
+	    (iroutine_t) tlb_shootdown_ipi);
 #endif
 }
Index: kernel/arch/amd64/src/mm/page.c
===================================================================
--- kernel/arch/amd64/src/mm/page.c	(revision b0b2ac1f84a3b0e8bfe6e96b3a01b9159ef4239f)
+++ kernel/arch/amd64/src/mm/page.c	(revision b3b7e14a1e27b36c3c59ce41e9bc3060bdc881fd)
@@ -116,7 +116,7 @@
 		page_table_unlock(AS_KERNEL, true);
 
-		exc_register(14, "page_fault", (iroutine) page_fault);
+		exc_register(14, "page_fault", true, (iroutine_t) page_fault);
 		write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
-	} else 
+	} else
 		write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
 }
