diff options
-rw-r--r-- | package/kernel/mac80211/patches/300-pending_work.patch | 17 |
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); |