Subject: kern/25143: fxp on i82550 now causes frequent device timeouts
To: None <>
From: None <>
List: netbsd-bugs
Date: 04/11/2004 10:08:55
>Number:         25143
>Category:       kern
>Synopsis:       fxp on i82550 now causes frequent device timeouts
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Apr 11 17:10:00 UTC 2004
>Originator:     Mike Wlodarczyk
>Release:        NetBSD 2.0_BETA (20040407 sources, i82557.c rev
System: NetBSD fireball 2.0_BETA NetBSD 2.0_BETA (FIREBALL-$Revision: 1.591 $) #0: Fri Apr 9 18:57:16 PDT 2004 root@fireball:/home/netbsd/2.0/src/sys/arch/i386/compile/FIREBALL.MP i386
Architecture: i386
Machine: i386

On an MSI K7D-Master-L board with onboard i82550 ethernet, the fxp driver
now causes far more "fxp0: device timeout" errors than it did before the commit. In fact, on this board there where very few errors
before. The connections may not recover quickly either. It's particularly
noticable running top in a telnet session to the NFS server where it may
take upwards of 30 seconds for screen updates to restart (along with the
other connections of course, they all recover at the same time).

The device is probed as
	fxp0 at pci2 dev 9 function 0: i82550 Ethernet, rev 16
	fxp0: interrupting at ioapic0 pin 17 (irq 11)
and it is sharing the interrupt with five other devices.

The problem is obvious when building packages over NFS. However, it does
not manifest itself in any predictable way that I have noticed. Oddly, doing
"dd if=/dev/zero of=/nfsmount/zerofile bs=64k count=10k" for example, did
not exhibit the problem in the four or five times I tried it. The NFS
server is running 1.6.2/i386 if it matters.

The 1.81 version of i82557.c works much better on the hardware described.