Bug 136943 - [wpi] [lor] wpi0_com_lock / wpi0
Summary: [wpi] [lor] wpi0_com_lock / wpi0
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: wireless (show other bugs)
Version: 8.0-BETA2
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-wireless (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-20 22:20 UTC by Rene Ladan
Modified: 2016-01-18 20:09 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rene Ladan freebsd_committer freebsd_triage 2009-07-20 22:20:04 UTC
lock order reversal:
 1st 0xffffff80002dc018 wpi0_com_lock (wpi0_com_lock) @ /usr/src/sys/modules/wpi/../../dev/wpi/if_wpi.c:1291
 2nd 0xffffff00024c0010 wpi0 (network driver) @ /usr/src/sys/modules/wpi/../../dev/wpi/if_wpi.c:2068
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
wpi_raw_xmit() at wpi_raw_xmit+0x7a
ieee80211_send_mgmt() at ieee80211_send_mgmt+0x4d5
sta_newstate() at sta_newstate+0x42e
wpi_newstate() at wpi_newstate+0xee
ieee80211_newstate_cb() at ieee80211_newstate_cb+0xac
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 = 0xffffff803c22bd30, rbp = 0 ---

How-To-Repeat: GENERIC + if_wpi + wpifw ( + other modules)
wlan0 with WPA2 authentication
Comment 1 Rene Ladan freebsd_committer freebsd_triage 2009-07-20 22:31:57 UTC
The same LOR with a different backtrace:

lock order reversal:
 1st 0xffffff80002dc018 wpi0_com_lock (wpi0_com_lock) @
/usr/src/sys/modules/wpi/../../dev/wpi/if_wpi.c:1291
 2nd 0xffffff00024c0010 wpi0 (network driver) @
/usr/src/sys/modules/wpi/../../dev/wpi/if_wpi.c:2068
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
wpi_raw_xmit() at wpi_raw_xmit+0x7a
ieee80211_send_mgmt() at ieee80211_send_mgmt+0x4d5
sta_newstate() at sta_newstate+0x42e
wpi_newstate() at wpi_newstate+0xee
ieee80211_newstate_cb() at ieee80211_newstate_cb+0xac
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 = 0xffffff803c22bd30, rbp = 0 ---
Comment 2 Mark Linimon freebsd_committer freebsd_triage 2009-07-25 02:27:46 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-net

Over to maintainer(s).
Comment 3 Gavin Atkinson freebsd_committer freebsd_triage 2011-04-11 23:46:18 UTC
Responsible Changed
From-To: freebsd-net->freebsd-wireless

Over to maintainer(s)
Comment 4 Andriy Voskoboinyk freebsd_committer freebsd_triage 2016-01-18 20:09:42 UTC
Should be fixed after r280113.