]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: iwlwifi: mld: don't report bad STA ID in EHT TB sniffer
authorJohannes Berg <johannes.berg@intel.com>
Mon, 11 May 2026 17:36:27 +0000 (20:36 +0300)
committerMiri Korenblit <miriam.rachel.korenblit@intel.com>
Tue, 26 May 2026 12:17:10 +0000 (15:17 +0300)
The field being reported here is part of the EHT union, and not
valid in EHT TB. Don't report it there. We could probably report
the station ID we're following, but for now just don't, since it
appears nobody really cared.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Link: https://patch.msgid.link/20260511203428.b23984f12a46.Ia25014392129d5815facaacec78ea8ba7f35d9a0@changeid
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
drivers/net/wireless/intel/iwlwifi/mld/rx.c

index b270cf87824d914347052aa00e8ca9ad327f33e5..a9f08f9846339dbde92a8130766230d78158acb6 100644 (file)
@@ -1206,6 +1206,13 @@ static void iwl_mld_decode_eht_non_tb(struct iwl_mld_rx_phy_data *phy_data,
        iwl_mld_eht_set_ru_alloc(rx_status,
                                 le32_get_bits(phy_data->ntfy->sigs.eht.b2,
                                               OFDM_RX_FRAME_EHT_STA_RU));
+
+       if (phy_data->with_data)
+               eht->user_info[0] |=
+                       cpu_to_le32(IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID_KNOWN) |
+                       LE32_DEC_ENC(phy_data->ntfy->sigs.eht.user_id,
+                                    OFDM_RX_FRAME_EHT_USER_FIELD_ID,
+                                    IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID);
 }
 
 static void iwl_mld_decode_eht_phy_data(struct iwl_mld_rx_phy_data *phy_data,
@@ -1314,14 +1321,6 @@ static void iwl_mld_rx_eht(struct iwl_mld *mld, struct sk_buff *skb,
        if (likely(!phy_data->ntfy))
                return;
 
-       if (phy_data->with_data) {
-               eht->user_info[0] |=
-                       cpu_to_le32(IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID_KNOWN) |
-                       LE32_DEC_ENC(phy_data->ntfy->sigs.eht.user_id,
-                                    OFDM_RX_FRAME_EHT_USER_FIELD_ID,
-                                    IEEE80211_RADIOTAP_EHT_USER_INFO_STA_ID);
-       }
-
        iwl_mld_decode_eht_usig(phy_data, skb);
        iwl_mld_decode_eht_phy_data(phy_data, rx_status, eht);
 }