Lock reversal and wi failure

Alan B. Clegg alan at clegg.com
Fri May 21 09:54:52 PDT 2004


On a newly CVSup'd and built system, I'm seeing the following:  After a
few minutes of use (not always the same length of time, nor packets passed),
my D-Link DWL-650 stops transmitting.  The "associated" light stays on,
and a tcpdump of the radiolink continues to show 802.11 packets passing.

However, any network traffic above that level is not seen.  I'm 
currently using a Orinoco Silver and have not seen a similar failure.

Here's some output....

> name -a
FreeBSD skippy.firehouse.net 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Fri May 21 07:38:41 EDT 2004     root at skippy.firehouse.net:/usr/obj/usr/src/sys/skippy  i386

> dmesg
wi0: <Lucent Technologies WaveLAN/IEEE> at port 0x180-0x1bf irq 11 function 0 config 1 on pccard1
wi0: [GIANT-LOCKED]
wi0: using Lucent Technologies, WaveLAN/IEEE
wi0: Lucent Firmware: Station (8.10.1)
wi0: Ethernet address: 00:02:2d:30:f3:59
wi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wi0: promiscuous mode enabled
lock order reversal
 1st 0xc08a17a0 bpf global lock (bpf global lock) @ /usr/src/sys/net/bpf.c:380
 2nd 0xc32b4bec wi0 (network driver) @ /usr/src/sys/dev/wi/if_wi.c:1090
Stack backtrace:
backtrace(0,ffffffff,c087db38,c087da20,c0813abc) at backtrace+0x12
witness_checkorder(c32b4bec,9,c07b1eb7,442) at witness_checkorder+0x593
_mtx_lock_flags(c32b4bec,0,c07b1eb7,442) at _mtx_lock_flags+0x67
wi_ioctl(c32b4000,80206910,d5172a7c,c07c22b5,d5172aa0) at wi_ioctl+0x42
ifpromisc(c32b4000,0) at ifpromisc+0x92
bpf_detachd(c36cc000) at bpf_detachd+0x26
bpfclose(c3521500,1,2000,c36316e0,c081c080) at bpfclose+0x83
spec_close(d5172b20,d5172b48,c0638dfc,d5172b20,c08590e0) at spec_close+0x2b6
spec_vnoperate(d5172b20) at spec_vnoperate+0x13
vn_close(c361fe38,1,c44b4c00,c36316e0,d5172bb8) at vn_close+0x40
vn_closefile(c32ad330,c36316e0) at vn_closefile+0x1e
fdrop_locked(c32ad330,c36316e0,c1608bbc,0,c07b6dca) at fdrop_locked+0x117
fdrop(c32ad330,c36316e0,3,c36316e0,d5172c14) at fdrop+0x24
closef(c32ad330,c36316e0) at closef+0x1db
fdfree(c36316e0,c36337f8,c36336e0,0,c363374c) at fdfree+0x2eb
exit1(c36316e0,0,d5172d40,c07539b7,c36316e0) at exit1+0x45f
exit1(c36316e0,d5172d14,1,3,292) at exit1
syscall(2f,2f,2f,bfbfe9d0,280eb9fa) at syscall+0x217
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (1), eip = 0x2822152f, esp = 0xbfbfe7bc, ebp = 0xbfbfe7d8 ---
wi0: promiscuous mode disabled
wi0: promiscuous mode enabled
lock order reversal
 1st 0xc3e4d560 bpf1 (bpf cdev lock) @ /usr/src/sys/net/bpf.c:1548
 2nd 0xc32b4bec wi0 (network driver) @ /usr/src/sys/dev/wi/if_wi.c:1090
Stack backtrace:
backtrace(0,ffffffff,c087d138,c087da20,c0813abc) at backtrace+0x12
witness_checkorder(c32b4bec,9,c07b1eb7,442) at witness_checkorder+0x593
_mtx_lock_flags(c32b4bec,0,c07b1eb7,442) at _mtx_lock_flags+0x67
wi_ioctl(c32b4000,80206910,d51d8ab0,c3e4d560,60c) at wi_ioctl+0x42
ifpromisc(c32b4000,0) at ifpromisc+0x92
bpf_detachd(c3e4d500,c3e4d560,0,c07c22b5,60c) at bpf_detachd+0x26
bpf_setdlt(c3e4d500,7f,0,c361fe38,d51d8b88) at bpf_setdlt+0xa4
bpfioctl(c3521500,80044278,d51d8c60,1,c40696e0) at bpfioctl+0x3e9
spec_ioctl(d51d8b88,d51d8c34,c0639897,d51d8b88,c08592a0) at spec_ioctl+0x15a
spec_vnoperate(d51d8b88) at spec_vnoperate+0x13
vn_ioctl(c32adf24,80044278,d51d8c60,c44b4c00,c40696e0) at vn_ioctl+0x17f
ioctl(c40696e0,d51d8d14,3,1,296) at ioctl+0x37c
syscall(2f,2f,2f,7f,817e000) at syscall+0x217
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (54), eip = 0x28223253, esp = 0xbfbfe79c, ebp = 0xbfbfe7b8 ---



-- 
   We have shared the incommunicable experience of war. We felt, we still
   feel, the passion of life to its top. In our youths, our hearts were
   touched by fire.                              -- Oliver Wendall Holmes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-mobile/attachments/20040521/f607c940/attachment.bin


More information about the freebsd-mobile mailing list