Message ID | 20210225145953.404859-2-arnd@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] mt76: mt7915: fix unused 'mode' variable | expand |
On Thu, Feb 25, 2021 at 7:00 AM Arnd Bergmann <arnd@kernel.org> wrote: > > From: Arnd Bergmann <arnd@arndb.de> > > Clang points out a mistake in the error handling in > mt7921_mcu_tx_rate_report(), which tries to dereference a pointer that > cannot be initialized because of the error that is being handled: > > drivers/net/wireless/mediatek/mt76/mt7921/mcu.c:409:3: warning: variable 'stats' is uninitialized when used here [-Wuninitialized] > stats->tx_rate = rate; > ^~~~~ > drivers/net/wireless/mediatek/mt76/mt7921/mcu.c:401:32: note: initialize the variable 'stats' to silence this warning > struct mt7921_sta_stats *stats; > ^ > Just remove the obviously incorrect line. Yeah, looks like perhaps a small mistake from when the driver was introduced. Thanks for the patch! Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> > > Fixes: 1c099ab44727 ("mt76: mt7921: add MCU support") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/net/wireless/mediatek/mt76/mt7921/mcu.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c > index db125cd22b91..b5cc72e7e81c 100644 > --- a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c > +++ b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c > @@ -405,10 +405,8 @@ mt7921_mcu_tx_rate_report(struct mt7921_dev *dev, struct sk_buff *skb, > if (wlan_idx >= MT76_N_WCIDS) > return; > wcid = rcu_dereference(dev->mt76.wcid[wlan_idx]); > - if (!wcid) { > - stats->tx_rate = rate; > + if (!wcid) > return; > - } > > msta = container_of(wcid, struct mt7921_sta, wcid); > stats = &msta->stats; > -- > 2.29.2 >
diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c index db125cd22b91..b5cc72e7e81c 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c +++ b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c @@ -405,10 +405,8 @@ mt7921_mcu_tx_rate_report(struct mt7921_dev *dev, struct sk_buff *skb, if (wlan_idx >= MT76_N_WCIDS) return; wcid = rcu_dereference(dev->mt76.wcid[wlan_idx]); - if (!wcid) { - stats->tx_rate = rate; + if (!wcid) return; - } msta = container_of(wcid, struct mt7921_sta, wcid); stats = &msta->stats;