ath10k: Ignore SWBA event for a vif if its marked for no beacon
authorMohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Tue, 20 Sep 2016 08:22:07 +0000 (13:52 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Wed, 28 Sep 2016 09:47:14 +0000 (12:47 +0300)
Ignore processing further in SWBA event scheduled for a vif, if mac80211
has marked the particular vif for stop beaconing and brought the vdev
down in 'ath10k_control_beaconing'. This should potentially avoid ath10k
warning/error messages while running continuous wifi down/up with max
number of vaps configured. Found this change during code walk through
and going through other beacon configuration related functions in ath10k

Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/wmi.c

index 38993d72f5e60f085acc0337ae0a67004503bf37..54df425bb0fc1e2fd23a28f9052e76f263b277ee 100644 (file)
@@ -3514,6 +3514,12 @@ void ath10k_wmi_event_host_swba(struct ath10k *ar, struct sk_buff *skb)
                        continue;
                }
 
+               /* mac80211 would have already asked us to stop beaconing and
+                * bring the vdev down, so continue in that case
+                */
+               if (!arvif->is_up)
+                       continue;
+
                /* There are no completions for beacons so wait for next SWBA
                 * before telling mac80211 to decrement CSA counter
                 *