aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Crispin <john@phrozen.org>2019-08-07 09:59:47 +0200
committerJohannes Berg <johannes.berg@intel.com>2019-08-21 10:32:57 +0200
commit8db6e7367d3ca78dd85c5e9fec2bd6d69981a980 (patch)
tree0fed45b42a7a99307810e0a198f1802317c9d5ae
parentmac80211: fix TX legacy rate reporting when tx_status_ext is used (diff)
downloadlinux-dev-8db6e7367d3ca78dd85c5e9fec2bd6d69981a980.tar.xz
linux-dev-8db6e7367d3ca78dd85c5e9fec2bd6d69981a980.zip
mac80211: fix bad guard when reporting legacy rates
When reporting legacy rates inside the TX Radiotap header we need to split the check between "uses tx_statua_ext" and "is legacy rate". Not doing so would make the code drop into the !tx_status_ext path. Fixes: 3d07ffcaf320 ("mac80211: add struct ieee80211_tx_status support to ieee80211_add_tx_radiotap_header") Signed-off-by: John Crispin <john@phrozen.org> Link: https://lore.kernel.org/r/20190807075949.32414-2-john@phrozen.org Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/status.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/net/mac80211/status.c b/net/mac80211/status.c
index f984943cdabd..4eac88fd2903 100644
--- a/net/mac80211/status.c
+++ b/net/mac80211/status.c
@@ -327,13 +327,13 @@ ieee80211_add_tx_radiotap_header(struct ieee80211_local *local,
/* IEEE80211_RADIOTAP_RATE */
- if (status && status->rate && !(status->rate->flags &
- (RATE_INFO_FLAGS_MCS |
- RATE_INFO_FLAGS_60G |
- RATE_INFO_FLAGS_VHT_MCS |
- RATE_INFO_FLAGS_HE_MCS)))
- legacy_rate = status->rate->legacy;
- else if (info->status.rates[0].idx >= 0 &&
+ if (status && status->rate) {
+ if (!(status->rate->flags & (RATE_INFO_FLAGS_MCS |
+ RATE_INFO_FLAGS_60G |
+ RATE_INFO_FLAGS_VHT_MCS |
+ RATE_INFO_FLAGS_HE_MCS)))
+ legacy_rate = status->rate->legacy;
+ } else if (info->status.rates[0].idx >= 0 &&
!(info->status.rates[0].flags & (IEEE80211_TX_RC_MCS |
IEEE80211_TX_RC_VHT_MCS)))
legacy_rate =