| From 3ccc94549a286ede43eaa328c4afc2aa09adc948 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 7 Nov 2024 13:30:05 +0800 |
| Subject: wifi: mt76: mt7925: fix the invalid ip address for arp offload |
| |
| From: Ming Yen Hsieh <mingyen.hsieh@mediatek.com> |
| |
| [ Upstream commit 113d469e7e23579a64b0fbb2eadf9228763092be ] |
| |
| The wrong ieee80211_vif will lead to get invalid ip address and |
| the correct ieee80211_vif can be obtained from ieee80211_bss_conf. |
| |
| Fixes: 147324292979 ("wifi: mt76: mt7925: add link handling in the BSS_CHANGED_ARP_FILTER handler") |
| Signed-off-by: Ming Yen Hsieh <mingyen.hsieh@mediatek.com> |
| Link: https://patch.msgid.link/20241107053005.10558-1-mingyen.hsieh@mediatek.com |
| Signed-off-by: Felix Fietkau <nbd@nbd.name> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/wireless/mediatek/mt76/mt7925/mcu.c | 4 +--- |
| 1 file changed, 1 insertion(+), 3 deletions(-) |
| |
| diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c |
| index b43617dbd5fde..123a585098e3b 100644 |
| --- a/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c |
| +++ b/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c |
| @@ -123,10 +123,8 @@ EXPORT_SYMBOL_GPL(mt7925_mcu_regval); |
| int mt7925_mcu_update_arp_filter(struct mt76_dev *dev, |
| struct ieee80211_bss_conf *link_conf) |
| { |
| - struct ieee80211_vif *mvif = container_of((void *)link_conf->vif, |
| - struct ieee80211_vif, |
| - drv_priv); |
| struct mt792x_bss_conf *mconf = mt792x_link_conf_to_mconf(link_conf); |
| + struct ieee80211_vif *mvif = link_conf->vif; |
| struct sk_buff *skb; |
| int i, len = min_t(int, mvif->cfg.arp_addr_cnt, |
| IEEE80211_BSS_ARP_ADDR_LIST_LEN); |
| -- |
| 2.39.5 |
| |