]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
wifi: mt76: mt7921: fix NULL pointer access in mt7921_ipv6_addr_change
authorBert Karwatzki <spasswolf@web.de>
Mon, 12 Aug 2024 10:45:41 +0000 (12:45 +0200)
committerKalle Valo <kvalo@kernel.org>
Tue, 13 Aug 2024 09:48:56 +0000 (12:48 +0300)
When disabling wifi mt7921_ipv6_addr_change() is called as a notifier.
At this point mvif->phy is already NULL so we cannot use it here.

Signed-off-by: Bert Karwatzki <spasswolf@web.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://patch.msgid.link/20240812104542.80760-1-spasswolf@web.de
drivers/net/wireless/mediatek/mt76/mt7921/main.c

index 1bab93d049df31ed58935b7eea7b6956f698533c..23b228804289be7e962704b7754de5d3155cf732 100644 (file)
@@ -1183,7 +1183,7 @@ static void mt7921_ipv6_addr_change(struct ieee80211_hw *hw,
                                    struct inet6_dev *idev)
 {
        struct mt792x_vif *mvif = (struct mt792x_vif *)vif->drv_priv;
-       struct mt792x_dev *dev = mvif->phy->dev;
+       struct mt792x_dev *dev = mt792x_hw_dev(hw);
        struct inet6_ifaddr *ifa;
        struct in6_addr ns_addrs[IEEE80211_BSS_ARP_ADDR_LIST_LEN];
        struct sk_buff *skb;