drivers/net/wireless/realtek/rtw89/pci.c:211:5-8: Unneeded variable: "cnt". Return " 1" on line 273
From: kernel test robot
Date: Thu Jan 25 2024 - 01:00:41 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 6098d87eaf31f48153c984e2adadf14762520a87
commit: 7ba49f4c6896d83b3841c0b046a0a7b1e97cc0dd rtw89: 8852c: add 8852ce to Makefile and Kconfig
date: 1 year, 9 months ago
config: parisc-randconfig-r053-20240114 (https://download.01.org/0day-ci/archive/20240125/202401251333.zQQf7lDL-lkp@xxxxxxxxx/config)
compiler: hppa-linux-gcc (GCC) 13.2.0
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401251333.zQQf7lDL-lkp@xxxxxxxxx/
cocci warnings: (new ones prefixed by >>)
>> drivers/net/wireless/realtek/rtw89/pci.c:211:5-8: Unneeded variable: "cnt". Return " 1" on line 273
vim +211 drivers/net/wireless/realtek/rtw89/pci.c
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 200
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 201 static u32 rtw89_pci_rxbd_deliver_skbs(struct rtw89_dev *rtwdev,
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 202 struct rtw89_pci_rx_ring *rx_ring)
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 203 {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 204 struct rtw89_pci_dma_ring *bd_ring = &rx_ring->bd_ring;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 205 struct rtw89_pci_rx_info *rx_info;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 206 struct rtw89_rx_desc_info *desc_info = &rx_ring->diliver_desc;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 207 struct sk_buff *new = rx_ring->diliver_skb;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 208 struct sk_buff *skb;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 209 u32 rxinfo_size = sizeof(struct rtw89_pci_rxbd_info);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 210 u32 offset;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 @211 u32 cnt = 1;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 212 bool fs, ls;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 213 int ret;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 214
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 215 skb = rx_ring->buf[bd_ring->wp];
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 216 rtw89_pci_sync_skb_for_cpu(rtwdev, skb);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 217
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 218 ret = rtw89_pci_rxbd_info_update(rtwdev, skb);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 219 if (ret) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 220 rtw89_err(rtwdev, "failed to update %d RXBD info: %d\n",
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 221 bd_ring->wp, ret);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 222 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 223 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 224
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 225 rx_info = RTW89_PCI_RX_SKB_CB(skb);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 226 fs = rx_info->fs;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 227 ls = rx_info->ls;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 228
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 229 if (fs) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 230 if (new) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 231 rtw89_err(rtwdev, "skb should not be ready before first segment start\n");
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 232 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 233 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 234 if (desc_info->ready) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 235 rtw89_warn(rtwdev, "desc info should not be ready before first segment start\n");
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 236 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 237 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 238
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 239 rtw89_core_query_rxdesc(rtwdev, desc_info, skb->data, rxinfo_size);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 240
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 241 new = dev_alloc_skb(desc_info->pkt_size);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 242 if (!new)
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 243 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 244
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 245 rx_ring->diliver_skb = new;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 246
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 247 /* first segment has RX desc */
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 248 offset = desc_info->offset;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 249 offset += desc_info->long_rxdesc ? sizeof(struct rtw89_rxdesc_long) :
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 250 sizeof(struct rtw89_rxdesc_short);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 251 } else {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 252 offset = sizeof(struct rtw89_pci_rxbd_info);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 253 if (!new) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 254 rtw89_warn(rtwdev, "no last skb\n");
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 255 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 256 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 257 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 258 if (!rtw89_skb_put_rx_data(rtwdev, fs, ls, new, skb, offset, rx_info, desc_info))
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 259 goto err_sync_device;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 260 rtw89_pci_sync_skb_for_device(rtwdev, skb);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 261 rtw89_pci_rxbd_increase(rx_ring, 1);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 262
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 263 if (!desc_info->ready) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 264 rtw89_warn(rtwdev, "no rx desc information\n");
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 265 goto err_free_resource;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 266 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 267 if (ls) {
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 268 rtw89_core_rx(rtwdev, desc_info, new);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 269 rx_ring->diliver_skb = NULL;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 270 desc_info->ready = false;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 271 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 272
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 @273 return cnt;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 274
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 275 err_sync_device:
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 276 rtw89_pci_sync_skb_for_device(rtwdev, skb);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 277 rtw89_pci_rxbd_increase(rx_ring, 1);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 278 err_free_resource:
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 279 if (new)
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 280 dev_kfree_skb_any(new);
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 281 rx_ring->diliver_skb = NULL;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 282 desc_info->ready = false;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 283
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 284 return cnt;
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 285 }
e3ec7017f6a20d Ping-Ke Shih 2021-10-11 286
:::::: The code at line 211 was first introduced by commit
:::::: e3ec7017f6a20d12ddd9fe23d345ebb7b8c104dd rtw89: add Realtek 802.11ax driver
:::::: TO: Ping-Ke Shih <pkshih@xxxxxxxxxxx>
:::::: CC: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki