[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnumach patches
From: |
Samuel Thibault |
Subject: |
Re: gnumach patches |
Date: |
Fri, 4 Nov 2005 22:02:55 +0100 |
User-agent: |
Mutt/1.5.9i-nntp |
Hi,
BTW, how is my irq fix going?
Just a reminder...
Samuel
2005-07-30 Samuel Thibault <samuel.thibault@ens-lyon.org>
* irq.c (linux_intr): Disable interrupts when the driver
requested it through request_irq().
--- gnumach/linux/dev/arch/i386/kernel/irq.c 1999-04-26 07:40:55.000000000
+0200
+++ gnumach/linux/dev/arch/i386/kernel/irq.c 2005-07-19 04:37:17.000000000
+0200
@@ -103,16 +103,23 @@ linux_intr (int irq)
{
struct pt_regs regs;
struct linux_action *action = *(irq_action + irq);
+ unsigned long flags;
kstat.interrupts[irq]++;
intr_count++;
+ save_flags (flags);
+ if (action && (action->flags & SA_INTERRUPT))
+ cli ();
+
while (action)
{
action->handler (irq, action->dev_id, ®s);
action = action->next;
}
+ restore_flags (flags);
+
intr_count--;
/* Not used. by OKUJI Yoshinori. */