iwlwifi: mvm: update power after phy_ctxt is NULL when unassigning chanctx
authorLuciano Coelho <luciano.coelho@intel.com>
Wed, 14 May 2014 07:01:14 +0000 (10:01 +0300)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 19 May 2014 13:37:30 +0000 (16:37 +0300)
iwl_mvm_power_update_mac() (more specifically
iwl_mvm_power_iterator()) relies on the phy_ctxt setting to decide
whether the vif is active or not.  When unassigning a chanctx, we
should therefore call iwl_mvm_power_update_mac() after setting
phy_chanctx to NULL.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/iwlwifi/mvm/mac80211.c

index 22a445f23aa1f07f8989b5f2986fbf350265d3a1..1c932e906be472317085294e4bab321867e80f45 100644 (file)
@@ -2299,10 +2299,10 @@ static void iwl_mvm_unassign_vif_chanctx(struct ieee80211_hw *hw,
        }
 
        iwl_mvm_binding_remove_vif(mvm, vif);
-       iwl_mvm_power_update_mac(mvm, vif);
 
 out_unlock:
        mvmvif->phy_ctxt = NULL;
+       iwl_mvm_power_update_mac(mvm, vif);
        mutex_unlock(&mvm->mutex);
 }