mirror of
https://github.com/torvalds/linux.git
synced 2026-05-05 23:05:25 -04:00
wifi: mac80211: correct RX stats packet increment for multi-link
Currently, RX stats packets are incremented for deflink member for non-ML and multi-link(ML) station case. However, for ML station, packets should be incremented based on the specific link. Therefore, if a valid link_id is present, fetch the corresponding link station information and increment the RX packets for that link. For non-MLO stations, the deflink will still be used. Signed-off-by: Sarika Sharma <quic_sarishar@quicinc.com> Link: https://patch.msgid.link/20250528054420.3050133-10-quic_sarishar@quicinc.com Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
committed by
Johannes Berg
parent
505991fba9
commit
5e9129f574
@@ -231,8 +231,19 @@ static void __ieee80211_queue_skb_to_iface(struct ieee80211_sub_if_data *sdata,
|
||||
|
||||
skb_queue_tail(&sdata->skb_queue, skb);
|
||||
wiphy_work_queue(sdata->local->hw.wiphy, &sdata->work);
|
||||
if (sta)
|
||||
sta->deflink.rx_stats.packets++;
|
||||
if (sta) {
|
||||
struct link_sta_info *link_sta_info;
|
||||
|
||||
if (link_id >= 0) {
|
||||
link_sta_info = rcu_dereference(sta->link[link_id]);
|
||||
if (!link_sta_info)
|
||||
return;
|
||||
} else {
|
||||
link_sta_info = &sta->deflink;
|
||||
}
|
||||
|
||||
link_sta_info->rx_stats.packets++;
|
||||
}
|
||||
}
|
||||
|
||||
static void ieee80211_queue_skb_to_iface(struct ieee80211_sub_if_data *sdata,
|
||||
|
||||
Reference in New Issue
Block a user