[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070730140517.68babf76@the-village.bc.nu>
Date: Mon, 30 Jul 2007 14:05:17 +0100
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: Ingo Molnar <mingo@...e.hu>
Cc: Jarek Poplawski <jarkao2@...pl>,
Thomas Gleixner <tglx@...utronix.de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Marcin ??lusarz <marcin.slusarz@...il.com>,
Jean-Baptiste Vignaud <vignaud@...dmail.fr>,
linux-kernel <linux-kernel@...r.kernel.org>,
shemminger <shemminger@...ux-foundation.org>,
linux-net <linux-net@...r.kernel.org>,
netdev <netdev@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: 2.6.20->2.6.21 - networking dies after random time
> So the whole locking is to be able to keep irqs enabled for a long time,
> without risking entry of the same IRQ handler on this same CPU, correct?
As implemented - on any CPU.
We also need to know that the IRQ handler is not doing useful work on
another processor which is why we take the lock after disabling the
interrupt line everywhere. Without that we might be completing an IRQ on
another CPU and that would race the transmit and make a nasty mess.
> So it seems to me that maybe the driver could be surprised via these
> spurious interrupts that happen right after the irq_enable(). Does the
> patch below make any sense in your opinion?
For MMIO it does look like that may be needed. Looks sensible.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists