diff options
author | Thomas Pedersen <thomas@cozybit.com> | 2013-06-11 00:17:21 +0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-06-11 15:14:42 +0400 |
commit | ecccd072b07e7fd09c54d0f86f9374e2645cde97 (patch) | |
tree | 8f2bc22f2aa1cb5a96d31ec3f7d87e6400d915e2 /init | |
parent | 780b40df12cf0161d8ccc5381940e04584793933 (diff) | |
download | linux-ecccd072b07e7fd09c54d0f86f9374e2645cde97.tar.xz |
mac80211: fix mesh deadlock
The patch "cfg80211/mac80211: use cfg80211 wdev mutex in
mac80211" introduced several deadlocks by converting the
ifmsh->mtx to wdev->mtx. Solve these by:
1. drop the cancel_work_sync() in ieee80211_stop_mesh().
Instead make the mesh work conditional on whether the mesh
is running or not.
2. lock the mesh work with sdata_lock() to protect beacon
updates and prevent races with wdev->mesh_id_len or
cfg80211.
Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions