[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <46CFB2D4.4010801@pobox.com>
Date: Sat, 25 Aug 2007 00:40:52 -0400
From: Jeff Garzik <jgarzik@...ox.com>
To: Florian Westphal <fw@...len.de>
CC: akpm@...ux-foundation.org, netdev@...r.kernel.org
Subject: Re: [PATCH] DM9000: fix interface hang under load
Florian Westphal wrote:
> When transferring data at full speed, the DM9000 network interface
> sometimes stops sending/receiving data. Worse, ksoftirqd consumes
> 100% cpu and the net tx watchdog never triggers.
> Fix by spin_lock_irqsave() in dm9000_start_xmit() to prevent the
> interrupt handler from interfering.
>
> Signed-off-by: Florian Westphal <fw@...len.de>
> ---
> Actually the comments ('Disable all interrupts, iow(db, DM9000_IMR, IMR_PAR) etc)
> give the impression that the interrupt handler cannot run during dm9000_start_xmit(),
> however this isn't correct (perhaps the chipset has some weird timing issues?).
> The interface lockup usually occurs between 30 and 360 seconds after starting transmitting
> data (netcat /dev/zero) at full speed; with this patch applied I haven't been able
> to reproduce hangs yet (ran for > 2h).
> FTR: This is a dm9000 on XScale-PXA255 rev 6 (ARMv5TE)/Compulab CM-x255, i.e.
> a module not supported by the vanilla kernel. Tested on (patched) 2.6.18.
>
> dm9000.c | 25 +++++++------------------
> 1 file changed, 7 insertions(+), 18 deletions(-)
applied
-
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