Skip to contentSkip to conversation

rtw89: add Realtek 802.11ax driver

bug report Dan Carpenter 2 participants 2 messages Nov 30, 2021 – Dec 1, 2021

lore
Share & tools
lore
#0 lore raw

Hello Ping-Ke Shih,

The patch e3ec7017f6a2: "rtw89: add Realtek 802.11ax driver" from Oct 11, 2021, leads to the following Smatch static checker warning:

	drivers/net/wireless/realtek/rtw89/mac80211.c:31 rtw89_ops_tx()
	error: uninitialized symbol 'qsel'.

drivers/net/wireless/realtek/rtw89/mac80211.c

    16 static void rtw89_ops_tx(struct ieee80211_hw *hw,
    17                          struct ieee80211_tx_control *control,
    18                          struct sk_buff *skb)
    19 {
    20         struct rtw89_dev *rtwdev = hw->priv;
    21         struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
    22         struct ieee80211_vif *vif = info->control.vif;
    23         struct ieee80211_sta *sta = control->sta;
    24         int ret, qsel;
    25 
    26         ret = rtw89_core_tx_write(rtwdev, vif, sta, skb, &qsel);
    27         if (ret) {
    28                 rtw89_err(rtwdev, "failed to transmit skb: %d\n", ret);
    29                 ieee80211_free_txskb(hw, skb);

Missing return; here?

    30         }
--> 31         rtw89_core_tx_kick_off(rtwdev, qsel);
    32 }

regards,
dan carpenter

#1 lore raw
Quoted 32 lines

-----Original Message-----
From: Dan Carpenter <[email protected]>
Sent: Tuesday, November 30, 2021 6:43 PM
To: Pkshih <[email protected]>
Cc: [email protected]
Subject: [bug report] rtw89: add Realtek 802.11ax driver

Hello Ping-Ke Shih,

The patch e3ec7017f6a2: "rtw89: add Realtek 802.11ax driver" from Oct 11, 2021, leads to the following Smatch static checker warning:

	drivers/net/wireless/realtek/rtw89/mac80211.c:31 rtw89_ops_tx()
	error: uninitialized symbol 'qsel'.

drivers/net/wireless/realtek/rtw89/mac80211.c

    16 static void rtw89_ops_tx(struct ieee80211_hw *hw,
    17                          struct ieee80211_tx_control *control,
    18                          struct sk_buff *skb)
    19 {
    20         struct rtw89_dev *rtwdev = hw->priv;
    21         struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
    22         struct ieee80211_vif *vif = info->control.vif;
    23         struct ieee80211_sta *sta = control->sta;
    24         int ret, qsel;
    25
    26         ret = rtw89_core_tx_write(rtwdev, vif, sta, skb, &qsel);
    27         if (ret) {
    28                 rtw89_err(rtwdev, "failed to transmit skb: %d\n", ret);
    29                 ieee80211_free_txskb(hw, skb);
Quoted 1 line

Missing return; here?

Yes. Thanks for the finding.
I will send a patch to fix it.

--
Ping-Ke