Index: kernel/arch/ia32/src/interrupt.c
===================================================================
--- kernel/arch/ia32/src/interrupt.c	(revision f6cf76f7843c1167e30be1aca613561ef0b4f295)
+++ kernel/arch/ia32/src/interrupt.c	(revision ef56a4328da1ed71522c868067e6224662037a28)
@@ -63,5 +63,5 @@
 void (*disable_irqs_function)(uint16_t irqmask) = NULL;
 void (*enable_irqs_function)(uint16_t irqmask) = NULL;
-void (*eoi_function)(void) = NULL;
+void (*eoi_function)(unsigned int) = NULL;
 const char *irqs_info = NULL;
 
@@ -90,8 +90,8 @@
 }
 
-static void trap_virtual_eoi(void)
+static void trap_virtual_eoi(unsigned int inum)
 {
 	if (eoi_function)
-		eoi_function();
+		eoi_function(inum);
 	else
 		panic("No eoi_function.");
@@ -179,5 +179,5 @@
     istate_t *istate __attribute__((unused)))
 {
-	trap_virtual_eoi();
+	trap_virtual_eoi(0);
 	tlb_shootdown_ipi_recv();
 }
@@ -204,5 +204,5 @@
 		if (irq->preack) {
 			/* Send EOI before processing the interrupt */
-			trap_virtual_eoi();
+			trap_virtual_eoi(inum);
 			ack = true;
 		}
@@ -219,5 +219,5 @@
 
 	if (!ack)
-		trap_virtual_eoi();
+		trap_virtual_eoi(inum);
 }
 
Index: kernel/arch/ia32/src/smp/apic.c
===================================================================
--- kernel/arch/ia32/src/smp/apic.c	(revision f6cf76f7843c1167e30be1aca613561ef0b4f295)
+++ kernel/arch/ia32/src/smp/apic.c	(revision ef56a4328da1ed71522c868067e6224662037a28)
@@ -508,5 +508,5 @@
 
 /** Local APIC End of Interrupt. */
-void l_apic_eoi(void)
+void l_apic_eoi(unsigned int ignored)
 {
 	l_apic[EOI] = 0;
