Subject: kern/29629: PCI driver stge does not function with 2.0.1
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <florence.henry@obspm.fr>
List: netbsd-bugs
Date: 03/08/2005 13:34:00
>Number:         29629
>Category:       kern
>Synopsis:       PCI driver stge does not function with 2.0.1
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Mar 08 13:34:00 +0000 2005
>Originator:     Florence HENRY
>Release:        NetBSD 2.0.1
>Organization:
Observatoire de Paris
>Environment:
NetBSD otarie.obspm.fr 2.0.1 NetBSD 2.0.1 (OTARIE) #0: Tue Mar  8 11:22:01 CET 2005  root@otarie.obspm.fr:/usr/src/sys/arch/i386/compile/OTARIE i386

(OTARIE is a copy of GENERIC)
>Description:
The ethernet PCI card "D-Link DGE 550T" does not work.

It is well recognized at boot time :

stge0 at pci2 dev 2 function 0: D-Link DL-4000 Gigabit Ethernet, rev. 12
stge0: interrupting at irq 10
stge0: Ethernet address 00:0f:3d:cd:e9:26
makphy0 at stge0 phy 1: Marvell 88E1000 Gigabit PHY, rev. 4
makphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto

ifconfig reports that it should be ok :

stge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        capabilities=7<IP4CSUM,TCP4CSUM,UDP4CSUM>
        enabled=0
        address: 00:0f:3d:cd:e9:26
        media: Ethernet 100baseTX full-duplex (1000baseT full-duplex)
        status: active
        inet 10.0.3.1 netmask 0xffffff00 broadcast 10.0.3.255
        inet6 fe80::20f:3dff:fecd:e926%stge0 prefixlen 64 scopeid 0x1

But it is impossible to send any packet trough this interface :

---
Listening to the stge0 interface and sending a ping to a machine located on the same private network (10.0.3.3), and linked directly with a cross-cable to the D-link card :

# /root # tcpdump -i stge0 
tcpdump: listening on stge0
14:19:02.358978 arp who-has 10.0.3.1 tell 10.0.3.3
14:19:02.358986 10.0.3.1 > 10.0.3.3: icmp: echo request seq 5
14:19:02.358988 arp reply 10.0.3.1 is-at 0:f:3d:cd:e9:26
14:19:07.393062 arp who-has 10.0.3.1 tell 10.0.3.3
14:19:07.393072 arp reply 10.0.3.1 is-at 0:f:3d:cd:e9:26

# /root # ping 10.0.3.3
PING 10.0.3.3 (10.0.3.3): 56 data bytes
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down
ping: sendto: Host is down

---
Listening to the stge0 interface and sending a ping from 10.0.3.3 :

# /root # tcpdump -i stge0 
tcpdump: listening on stge0
14:18:31.325929 arp who-has 10.0.3.3 tell 10.0.3.1
14:18:32.330039 arp who-has 10.0.3.3 tell 10.0.3.1
14:18:33.340026 arp who-has 10.0.3.3 tell 10.0.3.1
14:18:34.340024 arp who-has 10.0.3.3 tell 10.0.3.1
14:18:35.340025 arp who-has 10.0.3.3 tell 10.0.3.1

The ping on the 10.0.3.3 machine results in a timeout, with 100.0% packet loss.

So it seems that the card hears well but cannot talk...

(sorry for the kern/29627 sent by mistake before finishing the report)
>How-To-Repeat:

>Fix: