Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Apr 2006 13:08:20 +0200
From:      Ulrich Spoerlein <spoerlein@googlemail.com>
To:        "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
Cc:        stable@freebsd.org
Subject:   [LOR] bpf vs. USB (perhaps #147?)
Message-ID:  <20060416110820.GB60812@roadrunner.aventurien.local>

next in thread | raw e-mail | index | archive | help

--YiEDa0DAkWCtVeE4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hello again,

found some other LORs on 6.1-PRERELEASE while running kismet and tcpdump
on ural0 at the same time. They all look very similar, though one is in
usb_read, the other in usb_write.


Sleeping on "usbsyn" with the following non-sleepable locks held:
exclusive sleep mutex bpf global lock r =3D 0 (0xc079c280) locked @ /usr/sr=
c/sys/net/bpf.c:425
KDB: stack backtrace:
kdb_backtrace(1,c5a8ac48,c5a8c300,2,ef53f894) at kdb_backtrace+0x29
witness_warn(5,0,c06d7bd4,c06cf607) at witness_warn+0x18e
msleep(c5c49c00,0,4c,c06cf607,0) at msleep+0x42
usbd_transfer(c5c49c00,ef53f8f4,c04d6b05,c5c49c00,278940c2) at usbd_transfe=
r+0x121
usbd_sync_transfer(c5c49c00,278940c2,c5a8acf0,c5a8c300,c4c26000) at usbd_sy=
nc_transfer+0x11
usbd_do_request_flags_pipe(c4bf7580,c4bf7500,ef53f950,ef53f94e,0) at usbd_d=
o_request_flags_pipe+0x5d
usbd_do_request_flags(c4bf7580,ef53f950,ef53f94e,0,0) at usbd_do_request_fl=
ags+0x20
usbd_do_request(c4bf7580,ef53f950,ef53f94e) at usbd_do_request+0x1a
ural_read(c4c26000,444,c4c26000,0,ef53f990) at ural_read+0x42
ural_update_promisc(c4c26000) at ural_update_promisc+0x16
ural_ioctl(c4c1bc00,80206910,ef53f9ac,1,108903) at ural_ioctl+0x55
if_setflag(c4c1bc00,100,20000,c4c1bc44,0) at if_setflag+0x120
ifpromisc(c4c1bc00,0) at ifpromisc+0x23
bpf_detachd(c52b6a00) at bpf_detachd+0xae
bpfclose(c5c49100,7,2000,c5a8c300,c07502c0) at bpfclose+0x83
giant_close(c5c49100,7,2000,c5a8c300,c5c49100) at giant_close+0x30
devfs_close(ef53fab4) at devfs_close+0x2db
VOP_CLOSE_APV(c071cd40,ef53fab4) at VOP_CLOSE_APV+0x7e
vn_close(c5ef6dd0,7,c52d2e00,c5a8c300,0) at vn_close+0x8b
vn_closefile(c5c83cf0,c5a8c300,ef53fb6c,c0508328,c5c83cf0) at vn_closefile+=
0xca
devfs_close_f(c5c83cf0,c5a8c300) at devfs_close_f+0xf
fdrop_locked(c5c83cf0,c5a8c300,c4ae9640,0,c06d3ea7) at fdrop_locked+0x88
fdrop(c5c83cf0,c5a8c300,6b2,c07555c0,0) at fdrop+0x24
closef(c5c83cf0,c5a8c300) at closef+0x367
fdfree(c5a8c300) at fdfree+0x4a3
exit1(c5a8c300,0,ef53fd30,c069a577,c5a8c300) at exit1+0x438
exit1(c5a8c300,ef53fd04,1,6d,292) at exit1
syscall(3b,3b,3b,bfbf8f90,1) at syscall+0x22f
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (1, FreeBSD ELF32, sys_exit), eip =3D 0x482d4027, esp =3D 0xbfb=
f8f5c, ebp =3D 0xbfbf8f78 ---
lock order reversal: (Giant after non-sleepable)
 1st 0xc079c280 bpf global lock (bpf global lock) @ /usr/src/sys/net/bpf.c:=
425
 2nd 0xc07502c0 Giant (Giant) @ /usr/src/sys/kern/kern_synch.c:216
KDB: stack backtrace:
kdb_backtrace(0,ffffffff,c075f100,c075f588,c0724364) at kdb_backtrace+0x29
witness_checkorder(c07502c0,9,c06d7c0d,d8) at witness_checkorder+0x578
_mtx_lock_flags(c07502c0,0,c06d7c0d,d8) at _mtx_lock_flags+0x5b
msleep(c5c49c00,0,4c,c06cf607,0) at msleep+0x2d2
usbd_transfer(c5c49c00,ef53f8f4,c04d6b05,c5c49c00,278940c2) at usbd_transfe=
r+0x121
usbd_sync_transfer(c5c49c00,278940c2,c5a8acf0,c5a8c300,c4c26000) at usbd_sy=
nc_transfer+0x11
usbd_do_request_flags_pipe(c4bf7580,c4bf7500,ef53f950,ef53f94e,0) at usbd_d=
o_request_flags_pipe+0x5d
usbd_do_request_flags(c4bf7580,ef53f950,ef53f94e,0,0) at usbd_do_request_fl=
ags+0x20
usbd_do_request(c4bf7580,ef53f950,ef53f94e) at usbd_do_request+0x1a
ural_read(c4c26000,444,c4c26000,0,ef53f990) at ural_read+0x42
ural_update_promisc(c4c26000) at ural_update_promisc+0x16
ural_ioctl(c4c1bc00,80206910,ef53f9ac,1,108903) at ural_ioctl+0x55
if_setflag(c4c1bc00,100,20000,c4c1bc44,0) at if_setflag+0x120
ifpromisc(c4c1bc00,0) at ifpromisc+0x23
bpf_detachd(c52b6a00) at bpf_detachd+0xae
bpfclose(c5c49100,7,2000,c5a8c300,c07502c0) at bpfclose+0x83
giant_close(c5c49100,7,2000,c5a8c300,c5c49100) at giant_close+0x30
devfs_close(ef53fab4) at devfs_close+0x2db
VOP_CLOSE_APV(c071cd40,ef53fab4) at VOP_CLOSE_APV+0x7e
vn_close(c5ef6dd0,7,c52d2e00,c5a8c300,0) at vn_close+0x8b
vn_closefile(c5c83cf0,c5a8c300,ef53fb6c,c0508328,c5c83cf0) at vn_closefile+=
0xca
devfs_close_f(c5c83cf0,c5a8c300) at devfs_close_f+0xf
fdrop_locked(c5c83cf0,c5a8c300,c4ae9640,0,c06d3ea7) at fdrop_locked+0x88
fdrop(c5c83cf0,c5a8c300,6b2,c07555c0,0) at fdrop+0x24
closef(c5c83cf0,c5a8c300) at closef+0x367
fdfree(c5a8c300) at fdfree+0x4a3
exit1(c5a8c300,0,ef53fd30,c069a577,c5a8c300) at exit1+0x438
exit1(c5a8c300,ef53fd04,1,6d,292) at exit1
syscall(3b,3b,3b,bfbf8f90,1) at syscall+0x22f
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (1, FreeBSD ELF32, sys_exit), eip =3D 0x482d4027, esp =3D 0xbfb=
f8f5c, ebp =3D 0xbfbf8f78 ---
Sleeping on "usbsyn" with the following non-sleepable locks held:
exclusive sleep mutex bpf global lock r =3D 0 (0xc079c280) locked @ /usr/sr=
c/sys/net/bpf.c:425
KDB: stack backtrace:
kdb_backtrace(1,c5a8ac48,c5a8c300,0,ef53f894) at kdb_backtrace+0x29
witness_warn(5,0,c06d7bd4,c06cf607) at witness_warn+0x18e
msleep(c5c49c00,0,4c,c06cf607,0) at msleep+0x42
usbd_transfer(c5c49c00,ef53f8f4,c04d6b05,c5c49c00,278940c2) at usbd_transfe=
r+0x121
usbd_sync_transfer(c5c49c00,278940c2,c5a8acf0,c5a8c300,c4c26000) at usbd_sy=
nc_transfer+0x11
usbd_do_request_flags_pipe(c4bf7580,c4bf7500,ef53f94c,0,0) at usbd_do_reque=
st_flags_pipe+0x5d
usbd_do_request_flags(c4bf7580,ef53f94c,0,0,0) at usbd_do_request_flags+0x20
usbd_do_request(c4bf7580,ef53f94c,0) at usbd_do_request+0x1a
ural_write(c4c26000,444,7e,c4c26000,0) at ural_write+0x45
ural_update_promisc(c4c26000) at ural_update_promisc+0x36
ural_ioctl(c4c1bc00,80206910,ef53f9ac,1,108903) at ural_ioctl+0x55
if_setflag(c4c1bc00,100,20000,c4c1bc44,0) at if_setflag+0x120
ifpromisc(c4c1bc00,0) at ifpromisc+0x23
bpf_detachd(c52b6a00) at bpf_detachd+0xae
bpfclose(c5c49100,7,2000,c5a8c300,c07502c0) at bpfclose+0x83
giant_close(c5c49100,7,2000,c5a8c300,c5c49100) at giant_close+0x30
devfs_close(ef53fab4) at devfs_close+0x2db
VOP_CLOSE_APV(c071cd40,ef53fab4) at VOP_CLOSE_APV+0x7e
vn_close(c5ef6dd0,7,c52d2e00,c5a8c300,0) at vn_close+0x8b
vn_closefile(c5c83cf0,c5a8c300,ef53fb6c,c0508328,c5c83cf0) at vn_closefile+=
0xca
devfs_close_f(c5c83cf0,c5a8c300) at devfs_close_f+0xf
fdrop_locked(c5c83cf0,c5a8c300,c4ae9640,0,c06d3ea7) at fdrop_locked+0x88
fdrop(c5c83cf0,c5a8c300,6b2,c07555c0,0) at fdrop+0x24
closef(c5c83cf0,c5a8c300) at closef+0x367
fdfree(c5a8c300) at fdfree+0x4a3
exit1(c5a8c300,0,ef53fd30,c069a577,c5a8c300) at exit1+0x438
exit1(c5a8c300,ef53fd04,1,6d,292) at exit1
syscall(3b,3b,3b,bfbf8f90,1) at syscall+0x22f
Xint0x80_syscall() at Xint0x80_syscall+0x1f
--- syscall (1, FreeBSD ELF32, sys_exit), eip =3D 0x482d4027, esp =3D 0xbfb=
f8f5c, ebp =3D 0xbfbf8f78 ---
ural0: promiscuous mode disabled

Ulrich Spoerlein
--=20
 PGP Key ID: 20FEE9DD				Encrypted mail welcome!
Fingerprint: AEC9 AF5E 01AC 4EE1 8F70  6CBD E76E 2227 20FE E9DD
Which is worse: ignorance or apathy?
Don't know. Don't care.

--YiEDa0DAkWCtVeE4
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (FreeBSD)

iD8DBQFEQiWk524iJyD+6d0RAt3FAJ0YJ/liLJu+tdDspjAg2eNTE2Ke5ACfQjnL
Ly1m3DfZlAHLa9UhBqzzjp4=
=SDod
-----END PGP SIGNATURE-----

--YiEDa0DAkWCtVeE4--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060416110820.GB60812>