On 08/10/2024 01:35, Gax-c wrote: > From: Zichen Xie <zichenxie0106@xxxxxxxxx> > > mt76_connac_get_he_phy_cap() may return a NULL pointer, > leading to NULL Pointer Dereference. > Add a NULL check for the returned pointer. > > Fixes: a5c372f77aa7 ("wifi: mt76: mt7925: extend mt7925_mcu_bss_he_tlv for per-link BSS") > Fixes: e6d557a78b60 ("mt76: mt7915: rely on mt76_connac_get_phy utilities") > Fixes: 98686cd21624 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices") > Signed-off-by: Zichen Xie <zichenxie0106@xxxxxxxxx> > --- > v5: Add version tag. > v6: Adjust NULL check position for readability. > --- > drivers/net/wireless/mediatek/mt76/mt7915/mcu.c | 5 +++++ > drivers/net/wireless/mediatek/mt76/mt7925/mcu.c | 2 ++ > drivers/net/wireless/mediatek/mt76/mt7996/mcu.c | 2 ++ > 3 files changed, 9 insertions(+) > > diff --git a/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c > index 87d0dd040001..4d53f819c5f1 100644 > --- a/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c > +++ b/drivers/net/wireless/mediatek/mt76/mt7915/mcu.c > @@ -551,6 +551,8 @@ mt7915_mcu_bss_he_tlv(struct sk_buff *skb, struct ieee80211_vif *vif, > struct tlv *tlv; > > cap = mt76_connac_get_he_phy_cap(phy->mt76, vif); > + if (!cap) > + return; > > tlv = mt76_connac_mcu_add_tlv(skb, BSS_INFO_HE_BASIC, sizeof(*he)); > > @@ -1140,6 +1142,9 @@ mt7915_mcu_sta_bfer_he(struct ieee80211_sta *sta, struct ieee80211_vif *vif, > struct ieee80211_he_cap_elem *pe = &pc->he_cap_elem; > const struct ieee80211_sta_he_cap *vc = > mt76_connac_get_he_phy_cap(phy->mt76, vif); > + if (!vc) > + return; > + Nope. Splitting declarations is a no. One of your patches did not even build, although for few emails you were insisting everything is fine. This is not even close to Linux coding style. Please carefully read Documentation/process before posting new patches. Best regards, Krzysztof