iwlwifi: mvm: send BCAST management frames to the right station
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 7 May 2018 13:46:35 +0000 (16:46 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Fri, 31 Aug 2018 08:38:37 +0000 (11:38 +0300)
Probe responses were sent to the multicast station while
they should be routed to the broadcast station.
This has no negative effect since the frame was still
routed to the right queue, but it looked very fishy
to send a frame to a (queue, station) tuple where
'queue' is not mapped to 'station'.

Fixes: 7c305de2b954 ("iwlwifi: mvm: Direct multicast frames to the correct station")
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/tx.c

index c99b79d..ffc0ad1 100644 (file)
@@ -730,7 +730,7 @@ int iwl_mvm_tx_skb_non_sta(struct iwl_mvm *mvm, struct sk_buff *skb)
                if (info.control.vif->type == NL80211_IFTYPE_P2P_DEVICE ||
                    info.control.vif->type == NL80211_IFTYPE_AP ||
                    info.control.vif->type == NL80211_IFTYPE_ADHOC) {
-                       if (info.control.vif->type == NL80211_IFTYPE_P2P_DEVICE)
+                       if (!ieee80211_is_data(hdr->frame_control))
                                sta_id = mvmvif->bcast_sta.sta_id;
                        else
                                sta_id = mvmvif->mcast_sta.sta_id;