LOR: PFil hook read/write mutex vs if_bridge

From: Xin LI <delphij_at_delphij.net>
Date: Tue, 21 Jul 2009 23:31:03 -0700
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Looks like a new one, anybody care about it?

(maybe harmless though.  I haven't get a chance to exercise it further)

lock order reversal:
 1st 0xffffffff809ee9c8 PFil hook read/write mutex (PFil hook read/write
mutex) _at_ /usr/src/sys/net/pfil.c:74
 2nd 0xffffff0003326418 if_bridge (if_bridge) _at_
/usr/src/sys/net/if_bridge.c:1848
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
_witness_debugger() at _witness_debugger+0x2e
witness_checkorder() at witness_checkorder+0x81e
_mtx_lock_flags() at _mtx_lock_flags+0x78
bridge_output() at bridge_output+0x67
ether_output() at ether_output+0x558
pf_route() at pf_route+0x5ec
pf_test() at pf_test+0x7c4
pf_check_in() at pf_check_in+0x39
pfil_run_hooks() at pfil_run_hooks+0xcf
ip_input() at ip_input+0x2eb
netisr_dispatch_src() at netisr_dispatch_src+0xb8
ether_demux() at ether_demux+0x17d
ether_input() at ether_input+0x18e
em_rxeof() at em_rxeof+0x254
em_handle_rxtx() at em_handle_rxtx+0x4b
taskqueue_run() at taskqueue_run+0x96
taskqueue_thread_loop() at taskqueue_thread_loop+0x3f
fork_exit() at fork_exit+0x12a
fork_trampoline() at fork_trampoline+0xe
- --- trap 0, rip = 0, rsp = 0xffffff80000a6d30, rbp = 0 ---


- --
Xin LI <delphij_at_delphij.net>	http://www.delphij.net/
FreeBSD - The Power to Serve!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.12 (FreeBSD)

iEYEARECAAYFAkpmsicACgkQi+vbBBjt66DkhwCgojNp7zSLd/TNGrNg0rzVMpQ4
/XgAmwdOggz33OT8kBNjClVjz8R56Uy8
=7PU5
-----END PGP SIGNATURE-----
Received on Wed Jul 22 2009 - 04:32:29 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:52 UTC