summaryrefslogtreecommitdiff
path: root/net/mac80211/rx.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2023-02-15 10:40:41 +0100
committerJohannes Berg <johannes.berg@intel.com>2023-02-15 18:27:35 +0100
commitab5f171e36063b33aba1dd4c7c6d5031b00b42aa (patch)
tree60194cdef53f4482ad8f60e92602c999c95fddad /net/mac80211/rx.c
parent0d846bdc11101ac0ba4d89c2be359af08cb9379b (diff)
wifi: mac80211: always initialize link_sta with sta
When we have multiple interfaces receiving the same frame, such as a multicast frame, one interface might have a sta and the other not. In this case, link_sta would be set but not cleared again. Always set link_sta, so we keep an invariant that link_sta and sta are either both set or both not set. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r--net/mac80211/rx.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index 69aa623163c6..f7fdfe710951 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -4125,6 +4125,8 @@ static bool ieee80211_rx_data_set_sta(struct ieee80211_rx_data *rx,
if (!rx->sdata)
rx->sdata = sta->sdata;
rx->link_sta = &sta->deflink;
+ } else {
+ rx->link_sta = NULL;
}
if (link_id < 0)