Commit 97cc1694 authored by Avraham Stern's avatar Avraham Stern Committed by Kalle Valo
Browse files

iwlwifi: mvm: write queue_sync_state only for sync



We use mvm->queue_sync_state to wait for synchronous queue sync
messages, but if an async one happens inbetween we shouldn't
clear mvm->queue_sync_state after sending the async one, that
can run concurrently (at least from the CPU POV) with another
synchronous queue sync.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Fixes: 3c514bf8 ("iwlwifi: mvm: add a loose synchronization of the NSSN across Rx queues")
Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/iwlwifi.20201107104557.51a3148f2c14.I0772171dbaec87433a11513e9586d98b5d920b5f@changeid
parent 1cf260e3
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -3127,6 +3127,9 @@ static int iwl_mvm_mac_sta_state(struct ieee80211_hw *hw,
			goto out_unlock;
		}

		if (vif->type == NL80211_IFTYPE_STATION)
			vif->bss_conf.he_support = sta->he_cap.has_he;

		if (sta->tdls &&
		    (vif->p2p ||
		     iwl_mvm_tdls_sta_count(mvm, NULL) ==