Message ID | 20210225145953.404859-2-arnd@kernel.org |
---|---|
State | New |
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 > -- Thanks, ~Nick Desaulniers
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. > > Fixes: 1c099ab44727 ("mt76: mt7921: add MCU support") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Patch applied to wireless-drivers.git, thanks. fb5fabb192b2 mt76: mt7921: remove incorrect error handling -- https://patchwork.kernel.org/project/linux-wireless/patch/20210225145953.404859-2-arnd@kernel.org/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
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;