From 8573603b63880445cd323be1f9e470d75e7620e8 Mon Sep 17 00:00:00 2001 From: CleverMouse Date: Thu, 16 May 2013 18:45:41 +0000 Subject: [PATCH] small fix git-svn-id: svn://kolibrios.org@3511 a494cfbc-eb01-0410-851d-a64ba20cac60 --- kernel/trunk/core/irq.inc | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/kernel/trunk/core/irq.inc b/kernel/trunk/core/irq.inc index 6296a131ef..b7c98626b2 100644 --- a/kernel/trunk/core/irq.inc +++ b/kernel/trunk/core/irq.inc @@ -245,7 +245,19 @@ align 16 call [ebx+IRQH.handler] pop ecx test eax, eax - jnz .found_in_wrong_list + jz .try_next_handler + +.found_in_wrong_list: + DEBUGF 1,'K : warning: relinking handler from IRQ%d to IRQ%d\n',\ + ebp, [esp] + spin_lock_irqsave IrqsList + list_del ebx + pop ebp + lea edx, [irqh_tab+ebp*8] + list_add_tail ebx, edx + spin_unlock_irqrestore IrqsList + jmp .exit + .try_next_irq: inc ebp cmp ebp, 16 @@ -264,17 +276,6 @@ align 16 add esp, 4 iret -.found_in_wrong_list: - DEBUGF 1,'K : warning: relinking handler from IRQ%d to IRQ%d\n',\ - ebp, [esp] - spin_lock_irqsave IrqsList - list_del ebx - pop ebp - lea edx, [irqh_tab+ebp*8] - list_add_tail ebx, edx - spin_unlock_irqrestore IrqsList - jmp .exit - align 4 irqD: push eax