mt76: mt7603: check sta_rates pointer in mt7603_sta_rate_tbl_update
authorLorenzo Bianconi <lorenzo@kernel.org>
Sat, 22 Jan 2022 14:58:57 +0000 (15:58 +0100)
committerFelix Fietkau <nbd@nbd.name>
Thu, 3 Feb 2022 12:57:59 +0000 (13:57 +0100)
Check sta_rates pointer value in mt7603_sta_rate_tbl_update routine
since minstrel_ht_update_rates can fail allocating rates array.

Fixes: c8846e1015022 ("mt76: add driver for MT7603E and MT7628/7688")
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7603/main.c

index 2b546bc..83c5eec 100644 (file)
@@ -641,6 +641,9 @@ mt7603_sta_rate_tbl_update(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
        struct ieee80211_sta_rates *sta_rates = rcu_dereference(sta->rates);
        int i;
 
+       if (!sta_rates)
+               return;
+
        spin_lock_bh(&dev->mt76.lock);
        for (i = 0; i < ARRAY_SIZE(msta->rates); i++) {
                msta->rates[i].idx = sta_rates->rate[i].idx;