[3729] in linux-net channel archive
3c595 problems, 2.0.6, possible fix
daemon@ATHENA.MIT.EDU (Ove Ewerlid)
Tue Jul 16 20:49:13 1996
Date: Mon, 15 Jul 1996 16:58:21 +0200
From: Ove Ewerlid <ewerlid@syscon.uu.se>
To: linux-net@vger.rutgers.edu
CC: ewerlid@syscon.uu.se
Hi!
In the v0.25 vortex driver there is an optimization
wrt the tbusy flag (se below).
Removing this fixes my immediate problems and I've been running some
extensive tests the past 3 hours. So far so good!
Perhaps the 595 needs to have some registers touched to avoid
the lockup. I have not noticed any degradation in performance
due to the lack of this optimization (perhaps more CPU-cycles are
consumed - have not checked).
Also, I've found that even a 3c590 with 8 kb buffer can be
wedged by running x11perf on a machine connected to client via
a linux router. The server side should use 100 Mb/s and the client side
should use 10 Mb/s (obviously ...). It is the 3c590 on the router that
crashes.
I removed this code from the driver (sorry no patch!):
#if 0
if (inw(ioaddr + TxFree) > skb->len) /* We actually have free room. */
dev->tbusy = 0; /* Fake out the check below. */
else
#endif
and things work much better!
Your mileage may vary ...
Ove