aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-12-08 14:48:34 +0000
committerFelix Fietkau <nbd@openwrt.org>2013-12-08 14:48:34 +0000
commit51ee2f6812f5f874b5180968acb5f0e19b5fc129 (patch)
treecbfbfffe5b70553d38537c403d116cd7e7ae74d8 /package/kernel
parent765f7a61ce736b7c2686a747dc4c513912b2d76c (diff)
downloadupstream-51ee2f6812f5f874b5180968acb5f0e19b5fc129.tar.gz
upstream-51ee2f6812f5f874b5180968acb5f0e19b5fc129.tar.bz2
upstream-51ee2f6812f5f874b5180968acb5f0e19b5fc129.zip
mac80211: merge an ibss dfs locking fix
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39002 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel')
-rw-r--r--package/kernel/mac80211/patches/300-pending_work.patch17
1 files changed, 15 insertions, 2 deletions
diff --git a/package/kernel/mac80211/patches/300-pending_work.patch b/package/kernel/mac80211/patches/300-pending_work.patch
index 89a655c34c..58ae04e5df 100644
--- a/package/kernel/mac80211/patches/300-pending_work.patch
+++ b/package/kernel/mac80211/patches/300-pending_work.patch
@@ -6123,7 +6123,16 @@
--- a/net/mac80211/ibss.c
+++ b/net/mac80211/ibss.c
-@@ -550,12 +550,12 @@ int ieee80211_ibss_finish_csa(struct iee
+@@ -534,7 +534,7 @@ int ieee80211_ibss_finish_csa(struct iee
+ int err;
+ u16 capability;
+
+- sdata_lock(sdata);
++ sdata_assert_lock(sdata);
+ /* update cfg80211 bss information with the new channel */
+ if (!is_zero_ether_addr(ifibss->bssid)) {
+ capability = WLAN_CAPABILITY_IBSS;
+@@ -550,16 +550,15 @@ int ieee80211_ibss_finish_csa(struct iee
capability);
/* XXX: should not really modify cfg80211 data */
if (cbss) {
@@ -6138,7 +6147,11 @@
/* generate the beacon */
err = ieee80211_ibss_csa_beacon(sdata, NULL);
-@@ -922,7 +922,7 @@ ieee80211_ibss_process_chanswitch(struct
+- sdata_unlock(sdata);
+ if (err < 0)
+ return err;
+
+@@ -922,7 +921,7 @@ ieee80211_ibss_process_chanswitch(struct
IEEE80211_MAX_QUEUE_MAP,
IEEE80211_QUEUE_STOP_REASON_CSA);