Subject: kern/29817: bge(4) does not work when iwi(4) interface is up
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <jmcneill@NetBSD.org>
List: netbsd-bugs
Date: 03/28/2005 13:49:00
>Number:         29817
>Category:       kern
>Synopsis:       bge(4) does not work when iwi(4) interface is up
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Mar 28 13:49:00 +0000 2005
>Originator:     Jared D. McNeill
>Release:        2.99.15
>Organization:
Invisible
>Environment:
NetBSD bucky.ca.alcatel.com 2.99.15 NetBSD 2.99.15 (BUCKY) #78: Thu Mar 24 11:40:23 AST 2005  jmcneill@bucky.ca.alcatel.com:/export/home/jmcneill/netbsd/src/sys/arch/i386/compile/obj/BUCKY i386
>Description:
The following hardware lives in my ACPI-enabled Dell Latitude D600:

bge0 at pci2 dev 0 function 0
bge0: interrupting at irq 11
bge0: ASIC BCM5705 A1 (0x3001), Ethernet address 00:0f:1f:b7:09:bb
brgphy0 at bge0 phy 1: BCM5705 1000BASE-T media interface, rev. 1
brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
iwi0 at pci2 dev 3 function 0
iwi0: interrupting at irq 11
iwi0: 802.11 address 00:0e:35:bf:09:5f
iwi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
iwi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps

If I configure my iwi at boot with the following in ifconfig.iwi0, my bge0 interface stops working (won't detect a link, so nothing really works after that):

!/usr/sbin/iwictl iwi0 -i iwi0 -d /usr/pkg/libdata/if_iwi
up
nwid <whatever> nwkey <whatever>

I'm able to use my bge0 again after I perform an 'ifconfig iwi0 down'.

Kernel is 2.99.15, revision 1.4 of if_iwi.c, and using the iwi-firmware-2.2 package.
>How-To-Repeat:
# /usr/sbin/iwictl iwi0 -i iwi0 -d /usr/pkg/libdata/if_iwi
# /sbin/ifconfig iwi0 up
# /sbin/dhclient bge0
<watch it fail>
>Fix:
Not really a fix, but downing the iwi interface allows me to workaround the bug.