Subject: Erratic D-Link DWL-520 boot on SMP i386
To: None <tech-smp@netbsd.org>
From: George Sollish <gsollish@autogear.net>
List: tech-smp
Date: 05/24/2002 08:27:50
Following up on my previous, I am not a programmer, but it appears that
the multiprocessor code is interacting erratically with the wi driver, at
least when a D-Link DWL-520 is installed.

I have seen at least four different boot probes on the same hardware.
Based on my very small sample, now about 12 boots on two similar boxes
running the same 1.5ZC SMP kernel (but only one of the two in
multiprocessor mode) I would say that, when only a single processor is
detected the wi0 device probes and attaches as intended.

This is from the dual processor box (Supermicro P6DGE w/ Pentium III
850's, 440GX chipset) running a single processor GENERIC kernel:

NetBSD ivik.autogear.net 1.5ZC NetBSD 1.5ZC (GENERIC) #0: Wed Apr 24
17:36:26 EDT 2002
autobuild@tgm.wasabisystems.com:/home/tv/scratch/obj.i386/sys/arch/i386/
compile/GENERIC i386

wi0 at pci0 dev 20 function 0: Intersil Prism2.5 Wireless Lan
wi0: interrupting at irq 9
wi0: 802.11 address 00:05:5d:ee:59:06
wi0: using RF:PRISM2.5 MAC:ISL3874A(Mini-PCI)
wi0: Intersil Firmware: Primary (1.0.5), Station (1.3.4)

The following are three instances of booting the same kernel on the same
hardware, but multiprocessor:

NetBSD ivik.autogear.net 1.5ZC NetBSD 1.5ZC (MIDDLETON.MP) #0: Wed May 22
03:43:52 UTC 2002
root@labrador.autogear.net:/usr/src/syssrc/sys/arch/i386/compile/MIDDLETON.MP
i386

1st Boot: Successful wi0 attach

wi0 at pci0 dev 20 function 0: Intersil Prism2.5 Wireless Lan
wi0: interrupting at irq 9
wi0:wi0: command timed out, cmd=0x0
wi0: init failed
wi0: using Unknown Lucent chip
wi0: Lucent Firmware: Station (0.0.0)

2nd Boot: Successful wi0 attach

wi0 at pci0 dev 20 function 0: Intersil Prism2.5 Wireless Lan
wi0: interrupting at irq 9
wi0:wi0: command timed out, cmd=0x0
wi0: init failed
wi0: using RF:PRISM2.5 MAC:ISL3874A(Mini-PCI)
wi0: Intersil Firmware: Primary (1.0.5), Station (1.3.4)

3rd Boot: Panic on wi0 probe

wi0 at pci0 dev 20 function 0: Intersil Prism2.5 Wireless Lan
wi0: interupting at irq 9
wi0:wi0: command timed out, cmd=0x0
wi0: init failed
could not get mac address, attach failed
wi0: failed to attach controller
panic: intr_disestablish: bogus irq
stopped in pid0 (swapper) at cpu_Debugger+0x4: leave
db{0}

As a control, I can say that my single processor box (Supermicro P6SBA w/
Pentium III 1000, 440BX chipset) also running the same 1.5ZC snapshot and
the same MIDDLETON.MP kernel has, at least so far, always attached the
D-Link DWL-520 in the presumed preferred manner (listed first above).

Any ideas? (Please cc me directly, as I'm not subscribed on tech-smp.)

Thanks.

George E Sollish	Chief Engineer		Auto Gear Equipment
			Project Manager		The Payne Lake Project