Subject: Re: sip0: transmit FIFO underrun on 1.6.2RC4
To: James Burton <james@jmsh.net>
From: Dion van der Grijp <dvdgrijp@mbox3.singnet.com.sg>
List: port-i386
Date: 02/29/2004 21:43:25
On Sun, Feb 29, 2004 at 06:52:02PM +1100, James Burton wrote:
> I've just installed a NetGear FA311, adjusted kernel config and ...
> 
> sip0 at pci0 dev 10 function 0: NatSemi DP83815 10/100 Ethernet, rev 00
> sip0: interrupting at irq 3
> sip0: Ethernet address 00:09:5b:60:7e:3e
> nsphyter0 at sip0 phy 0: DP83815 10/100 media interface, rev. 1
> nsphyter0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> 
> Except that ...
> 
> Feb 29 18:25:09 artworks /netbsd: sip0: transmit FIFO underrun; increasing Tx dr
> ain threshold to 1536 bytes
> Feb 29 18:25:18 artworks /netbsd: sip0: transmit FIFO underrun; increasing Tx dr
> ain threshold to 1568 bytes

----[snip]----

> Feb 29 18:25:36 artworks /netbsd: sip0: transmit FIFO underrun; increasing Tx dr
> ain threshold to 1984 bytes
> Feb 29 18:25:37 artworks /netbsd: sip0: transmit FIFO underrun
> Feb 29 18:25:56 artworks last message repeated 12 times 
> 
> I'll update my kernel sources, and try the relevant files from current.
> Seems somewhat similar to PR14965 & PR13406, has something occurred recently
> that makes this happen again?
> 
> Thanks,
> James
> 
> ---
> James Burton (james@jmsh.net)   

You may want to take a look at PR-13770 (too).  I experienced the same
"transmit FIFO underrun" with the sip0 driver on a freshly installed NetBSD
1.6.1 system, and found that the fix described in PR-13770 worked.

Strangely, PR-13770 was closed based on feedback from the original poster
stating that "...defaults used in 1.6.1 fix the problem."  But, I still
encountered the same symptoms after installing 1.6.1.  In fact, I subsequently
fetched a later version of the if_sip.c module (around Oct 2003), rebuilt the
kernel using that, and found that the problem was still there.

The fix described in PR-13770 seems to be on the mark, because it definitely
works in my case - and has been working ever since.  Why don't you give it
a try?  I'm hoping this will be resolved once and for all when 1.6.2 is
formally released.

Regards,
Dion
_