-----BEGIN PGP SIGNED MESSAGE-----
On 11/08/05 09:35:29, firstname.lastname@example.org wrote:
My theory as to why this occurs is that in au1000_tx there is a race
If a tx_done interrupt for the last tx buffer occurs between reading
buff_stat (line 1905, au1000_eth.c) and calling netif_stop_queue then
the queue won't get woken until the watchdog barks.
I inserted a local_irq_save() at line 1903 and a local_irq_restore()
at line 1915 and that seems to have fixed the problem. (Been running
for half an hour with no netdev timeouts).
Oh you'll need to turn WARN_ON off or you'll get lots of
Badness in local_bh_enable warnings.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
-----END PGP SIGNATURE-----