NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/38021: Tulip NIC "dribbling bit" and "CRC error"

>Number:         38021
>Category:       kern
>Synopsis:       Tulip NIC "dribbling bit" and "CRC error"
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Feb 13 19:25:00 +0000 2008
>Originator:     Rich Wales
>Release:        4.0
NetBSD 4.0 NetBSD 4.0 (TROLL) #0: Wed Feb 13 10:03:27 PST 2008 i386

On a new NetBSD 4.0 box with a Tulip NIC, I saw a burst of errors saying "tlp0: 
receive error: dribbling bit" and "tlp0: receive error: CRC error".

The relevant portion of my "dmesg" output for this NIC is:

tlp0 at pci0 dev 16 function 0: ADMtek AN985 Ethernet, pass 1.1
tlp0: interrupting at irq 10
tlp0: Ethernet address 00:04:5a:6e:56:f5
ukphy0 at tlp0 phy 1: Generic IEEE 802.3u media interface
ukphy0: OUI 0x00e092, model 0x0001, rev. 1
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

The output of "ifconfig tlp0" is:

        address: 00:04:5a:6e:56:f5
        media: Ethernet autoselect (100baseTX full-duplex)
        status: active
        inet netmask 0xffffff00 broadcast

Tthis problem seems to have been around for a very long time (and a fix was 
proposed long ago), but apparently the proposed fix either created its own 
problems or was simply overlooked.  Take a look here:

I'm running a custom kernel, but the customizations shouldn't be relevant to 
this problem as far as I can imagine.
Install a network card handled by the "tlp" driver.  Do a lot of network 
traffic, and wait for the problem to show up eventually.

The above article suggests changing an instance of "__m->m_ext.ext_size - 1" to 
"__m->m_ext.ext_size - 2" in sys/dev/ic/tulipvar.h.  Note that this fix was 
proposed a long time ago, and may or may not be correct.  I have not tried it 
myself (yet).

Home | Main Index | Thread Index | Old Index