From: Thomas Pedersen Date: Mon, 10 Jun 2013 20:17:21 +0000 (-0700) Subject: mac80211: fix mesh deadlock X-Git-Tag: v3.11-rc1~64^2~166^2^2~45^2~10 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ecccd072b07e7fd09c54d0f86f9374e2645cde97;p=pandora-kernel.git 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 Signed-off-by: Johannes Berg --- Reading git-diff-tree failed