D-Link DFE-500TX and network lockups

Simon Josefsson jas@pdc.kth.se
Wed Jul 15 12:15:56 1998


--Multipart_Wed_Jul_15_18:15:45_1998-1
Content-Type: text/plain; charset=US-ASCII

Mogens Kjaer <mk@crc.dk> writes:

> > otherhost$ ping -f buggyhost
> > PING host: 56 data bytes
> > ..........................
> > 
> > and then it starts to answer the pings with no packet loss.  Repeating
> > "ping -f" gives the same output (initial packet loss, then works OK).
> 
> Have you tried with larger packets, using the -s option to "ping -f"  ?

Another host just got this problem, and still has, so I can play with
it.

Packet size      Packet loss
 128b packets	 < 0.1 %
 512b packets    ~   1 %
1024b packets    ~   2 %
2048b packets    ~   3 %

I get 0 % packet loss against working hosts (same NIC, only not in the
buggy state), with all these packet sizes.

I attach output from /proc/pci, and output from tulip-diag on a card
in the "buggy" state and a similair card in the non-buggy state.

If it matters, motherboard is Gigabyte GA6BXDS with dual pentium II
350 MHz processors.

I'll help debugging this further if someone has any ideas.

/s


--Multipart_Wed_Jul_15_18:15:45_1998-1
Content-Type: text/plain; charset=US-ASCII

# cat /proc/pci
PCI devices found:
...
  Bus  0, device  10, function  0:
    Ethernet controller: DEC DC21140 (rev 34).
      Medium devsel.  Fast back-to-back capable.  IRQ 5.  Master Capable.  Latency=64.  Min Gnt=20.Max Lat=40.
      I/O at 0xdc00.
      Non-prefetchable 32 bit memory at 0xe8000000.
  Bus  0, device   9, function  0:
    Ethernet controller: DEC DC21140 (rev 34).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable.  Latency=64.  Min Gnt=20.Max Lat=40.
      I/O at 0xd800.
      Non-prefetchable 32 bit memory at 0xe8001000.
  Bus  0, device   8, function  0:
    Ethernet controller: DEC DC21140 (rev 34).
      Medium devsel.  Fast back-to-back capable.  IRQ 11.  Master Capable.  Latency=64.  Min Gnt=20.Max Lat=40.
      I/O at 0xd400.
      Non-prefetchable 32 bit memory at 0xe8003000.
...

--Multipart_Wed_Jul_15_18:15:45_1998-1
Content-Type: text/plain; charset=US-ASCII

Tulip diag on the "buggy" card:

# ~jas/pop/tulip-diag -f -e -e -a -m -m
...
Chip Index #3: Found a DC21140 Tulip card at PCI bus 0, device 8 I/O 0xd400.
Digital DS21140 Tulip chip registers at 0xd400:
  ffa04800 ffffffff ffffffff 00fff028 00fff228 fc660000 320e2202 ffffebef
  e0000048 fffd83ff ffffffff fffe0000 ffffff80 ffffffff 1c09fdc0 fffffec8
 The Rx process state is 'Waiting for packets'.
 The Tx process state is 'Idle'.
Transmit started, Receive started, full-duplex.
 The transmit threshold is 128.
 Port selection is MII, full-duplex.
EEPROM contents:
  1186 1100 0000 0000 0000 0000 0000 0000
  00d0 0103 8000 4ac8 e4db 1e00 0000 0800
  0100 018c 0000 0000 e078 0001 0050 0018
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 cb67
 ID CRC 0xd0 (vs. 0xd0), complete CRC 192cfd32.
EEPROM transceiver/media description for the DC21140 chip.

Leaf node at offset 30, default media type 0800 (Autosense).
 CSR12 direction setting bits 00.
 1 transceiver description blocks:
  Media MII,  block type 1.
   MII interface PHY 0 (media type 11).
 MII PHY found at address 0, status 0x782d.
 MII PHY #0 transceiver registers:
   1000 782d 7810 0001 01e1 45e1 0001 0000
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 4000 0000 3ffb 0010 0000 0002
   0001 0000 0000 0000 0000 0000 0000 0000.

--Multipart_Wed_Jul_15_18:15:45_1998-1
Content-Type: text/plain; charset=US-ASCII

Tulip diag on a working card (same revision etc as the buggy, just not
just yet in the buggy state):

# ~jas/pop/tulip-diag -f -e -e -a -m -m
...
Chip Index #3: Found a DC21140 Tulip card at PCI bus 0, device 8 I/O 0xd400.
Digital DS21140 Tulip chip registers at 0xd400:
  ffa04800 ffffffff ffffffff 00fff028 00fff228 fc660000 320e2202 ffffebef
  e0000000 fffd83ff ffffffff fffe0000 ffffff80 ffffffff 1c09fdc0 fffffec8
 The Rx process state is 'Waiting for packets'.
 The Tx process state is 'Idle'.
Transmit started, Receive started, full-duplex.
 The transmit threshold is 128.
 Port selection is MII, full-duplex.
EEPROM contents:
  1186 1100 0000 0000 0000 0000 0000 0000
  00d0 0103 8000 4ac8 2bdb 1e00 0000 0800
  0100 018c 0000 0000 e078 0001 0050 0018
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 0000
  0000 0000 0000 0000 0000 0000 0000 d37f
 ID CRC 0xd0 (vs. 0xd0), complete CRC 13439c2.
EEPROM transceiver/media description for the DC21140 chip.

Leaf node at offset 30, default media type 0800 (Autosense).
 CSR12 direction setting bits 00.
 1 transceiver description blocks:
  Media MII,  block type 1.
   MII interface PHY 0 (media type 11).
 MII PHY found at address 0, status 0x782d.
 MII PHY #0 transceiver registers:
   1000 782d 7810 0001 01e1 45e1 0001 0000
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 4000 0000 38c8 0010 0000 0002
   0001 0000 0000 0000 0000 0000 0000 0000.

--Multipart_Wed_Jul_15_18:15:45_1998-1--