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 c99b79d686d059229aef140454a5a51412804a2f..ffc0ad1eef15f292ebc0c8ff4e59f166bacb7ac4 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;