Description:
At least two different pcmcia wireless lan cards cause wi to panic on a
Toshiba Satellite Pro 430 CDT running OpenBSD 3.7. Other PCMCIA cards
(neither are wireless cards although) work acceptably.
Checks performed:
-Looked @ src/sys/dev/ic/if_wi.c revs and did not see any major changes
since 3.7 that would likely solve such a problem. No, I didn't try
current, for this reason.
-Tried other cards. A DWL D-link 650 also causes panic. Cards that don't
use wi driver (2 different modems work under PCMCIA w/their respective
drivers)
-Tried in both PCMCIA slots
-Looked for similar problems with wi on all BSDs. Found other panics
with wi. Most of these reported problems I was unable to find any
updates on the thread. Maybe there is an answer that didn't make it back
to lists.
-3.8 current install dist (from 10/24/2005) also panics
-Tried NetBSD -current (200510190000Z and 200510160000Z). Having
unrelated panic. Giving up for now since I am not nearly as familar with
Net, but if someone thinks it would make a big difference in diagnosing
this problem, I can pursue it further.
DMESG:
OpenBSD 3.7 (GENERIC) #50: Sun Mar 20 00:01:57 MST 2005
[EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel Pentium (P54C) ("GenuineIntel" 586-class) 120 MHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,MCE,CX8
cpu0: F00F bug workaround installed
real mem = 16556032 (16168K)
avail mem = 7004160 (6840K)
using 227 buffers containing 929792 bytes (908K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(63) BIOS, date 02/24/99
apm0 at bios0: Power Management spec V1.2
apm0: battery life expectancy 100%
apm0: AC on, battery charge high, charging, estimated 3:49 hours
pcibios at bios0 function 0x1a not configured
bios0: ROM list: 0xc0000/0xc000
cpu0 at mainbus0
isa0 at mainbus0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0 (mux 1 ignored for console): console keyboard
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
vga0 at isa0 port 0x3b0/48 iomem 0xa0000/131072
wsdisplay0 at vga0: console (80x25, vt100 emulation), using wskbd0
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
wdc0 at isa0 port 0x1f0/8 irq 14
wd0 at wdc0 channel 0 drive 0: <TOSHIBA MK1403MAV>
wd0: 16-sector PIO, LBA, 1296MB, 2654280 sectors
wd0(wdc0:0:0): using BIOS timings
sb0 at isa0 port 0x220/24 irq 5 drq 1: dsp v3.01
midi0 at sb0: <SB MIDI UART>
audio0 at sb0
opl0 at sb0: model OPL3
midi1 at opl0: <SB Yamaha OPL3>
pcppi0 at isa0 port 0x61
midi2 at pcppi0: <PC speaker>
sysbeep0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pccom0: console
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
pcic0 at isa0 port 0x3e0/2 iomem 0xd0000/65536
pcic0 controller 0: <Intel 82365SL rev 1> has sockets A and B
pcmcia0 at pcic0 controller 0 socket 0
pcmcia1 at pcic0 controller 0 socket 1
pcic0: irq 3, polling enabled
biomask ef45 netmask ef45 ttymask ffcf
pctr: 586-class performance counters and user-level cycle counter
enabled
dkcsum: wd0 matched BIOS disk 80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
WARNING: / was not properly unmounted
Stopped at Debugger+0x4: leave
ddb> pcmcia_verbose 0 = 0x1
ddb>
DDB output on panic (pcmcia_verbose) with ps and trace:
Now for card which causes panic when using wi driver
#
#
# pcmcia0: CIS version PC Card Standard 5.0
pcmcia0: CIS info: Symbol Technologies, LA4111 Spectrum24 Wireless LAN
PC Card,0pcmcia0: Manufacturer code 0x14d, product 0x1
pcmcia0: function 0: network adapter, ccr addr 3e0 mask 7
pcmcia0: function 0, config table entry 1: I/O card; irq mask ffff;
iomask 7, ilwi0 at pcmcia0 function 0 "Symbol Technologies, LA4111
Spectrum24 Wireless LAN 0Stopped at Xprot: pushl $0x4
ddb> ps
PID PPID PGRP UID S FLAGS WAIT COMMAND
17029 1 17029 0 3 0x40184 select sendmail
419 1 419 0 3 0x4086 ttyin sh
15215 1 15215 0 3 0x4082 ttyin getty
23401 1 23401 0 3 0x4082 ttyin getty
18899 1 18899 0 3 0x4082 ttyin getty
3533 1 3533 0 3 0x4082 ttyin getty
29548 1 29548 0 3 0x4082 ttyin sh
20202 1 20202 0 3 0x84 select cron
14022 1 14022 0 3 0x84 kqread apmd
2089 1 2089 0 3 0x180 select inetd
16018 21431 21431 73 2 0x184 syslogd
21431 1 21431 0 3 0x84 netio syslogd
11 0 0 0 3 0x100204 crypto_wa crypto
10 0 0 0 3 0x100204 aiodoned aiodoned
9 0 0 0 2 0x100204 update
8 0 0 0 3 0x100204 cleaner cleaner
7 0 0 0 3 0x100204 reaper reaper
6 0 0 0 3 0x100204 pgdaemon pagedaemon
5 0 0 0 3 0x100204 pcicev pcic0,0,1
* 4 0 0 0 7 0x100204 pcic0,0,0
3 0 0 0 2 0x100204 apm0
2 0 0 0 3 0x100204 kmalloc kmthread
1 0 1 0 3 0x4080 wait init
0 -1 0 0 3 0x80204 scheduler swapper
ddb> trace
Xprot(d047b792,8,10246,d0563264,3) at Xprot
curpcb(d078c200,d0808000,d3605ee4,0,d078c214) at 0x703
config_attach(d078c200,d055dbb4,d3605ee4,d0472148) at config_attach+0xef
pcmcia_card_attach(d078c200,d05b3be0,d3605f4c,d07f22f0,d05b3be0) at
pcmcia_card
_attach+0xf4
pcic_attach_card(d078dc80,7f,0,d08025f0,d078dc80) at pcic_attach_card
+0x1c
pcic_event_process(d078dc80,d08025f0,0,0) at pcic_event_process+0x17c
pcic_event_thread(d078dc80) at pcic_event_thread+0x8a
Bad frame pointer: 0xd06d3e98
ddb> c
kernel: protection fault trap, code=0
Stopped at wi_pcmcia_attach+0x126: subl $0xc,%esp
ddb>
, irq 9
kernel: protection fault trap, code=0
Stopped at Xprot: pushl $0x4
ddb>
kernel: protection fault trap, code=0
Stopped at wi_intr_ack+0x31: leal 0(%esi),%esi
ddb>
kernel: protection fault trap, code=0
Stopped at Xrecurse_legacy8+0x75: testl %ebx,%ebx
ddb>
wi0kernel: protection fault trap, code=0
Stopped at Xdiv: pushl $0
ddb>
kernel: integer divide fault trap, code=0
Stopped at com_common_putc+0x56: testb $0x20,%al
ddb>
: Symbol PRISM2 HFA3841(EVB2), Firmware 1.1.2 (primary), 2.0.17
(station), addrakernel: protection fault trap, code=0
Stopped at Xprot: pushl $0x4
ddb>
kernel: protection fault trap, code=0
Stopped at wi_write_record_io+0xeb: nop
ddb>
kernel: protection fault trap, code=0
Stopped at Xdiv: pushl $0
ddb>
kernel: integer divide fault trap, code=0
Stopped at wi_cmd_io+0xbb: movl 0xfffffff0(%ebp),%eax
ddb>
kernel: protection fault trap, code=0
Stopped at Xdiv: pushl $0
ddb>
kernel: integer divide fault trap, code=0
Stopped at wi_seek+0x76: movl $0x1869f,%esi
ddb>
kernel: protection fault trap, code=0
Stopped at Xdiv: pushl $0
ddb>
kernel: integer divide fault trap, code=0
Stopped at wi_alloc_nicmem_io+0x125: decl %ebx
ddb>
Admittedly, this is my first attempt with OpenBSD on a laptop, so PCMCIA
support in OpenBSD is not something I have worked with too much. I think
I covered most of the bases that others have requested in past threads.
Let me know if more detail is needed. I can provide this same
information for the D-Link DWL 650 if it would be worthwhile.
Thanks in advance.
--
Aaron