[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202508171049.SGYNFbP3-lkp@intel.com>
Date: Mon, 18 Aug 2025 09:20:20 +0300
From: Dan Carpenter <dan.carpenter@...aro.org>
To: oe-kbuild@...ts.linux.dev, Jason Xing <kerneljasonxing@...il.com>,
davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, bjorn@...nel.org, magnus.karlsson@...el.com,
maciej.fijalkowski@...el.com, jonathan.lemon@...il.com,
sdf@...ichev.me, ast@...nel.org, daniel@...earbox.net,
hawk@...nel.org, john.fastabend@...il.com, horms@...nel.org,
andrew+netdev@...n.ch
Cc: lkp@...el.com, oe-kbuild-all@...ts.linux.dev, bpf@...r.kernel.org,
netdev@...r.kernel.org, Jason Xing <kernelxing@...cent.com>
Subject: Re: [PATCH net-next 1/2] xsk: introduce XDP_GENERIC_XMIT_BATCH
setsockopt
Hi Jason,
kernel test robot noticed the following build warnings:
url: https://github.com/intel-lab-lkp/linux/commits/Jason-Xing/xsk-introduce-XDP_GENERIC_XMIT_BATCH-setsockopt/20250811-211509
base: net-next/main
patch link: https://lore.kernel.org/r/20250811131236.56206-2-kerneljasonxing%40gmail.com
patch subject: [PATCH net-next 1/2] xsk: introduce XDP_GENERIC_XMIT_BATCH setsockopt
config: s390-randconfig-r073-20250817 (https://download.01.org/0day-ci/archive/20250817/202508171049.SGYNFbP3-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 8.5.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@...el.com>
| Reported-by: Dan Carpenter <dan.carpenter@...aro.org>
| Closes: https://lore.kernel.org/r/202508171049.SGYNFbP3-lkp@intel.com/
smatch warnings:
net/xdp/xsk.c:1495 xsk_setsockopt() warn: inconsistent returns '&xs->mutex'.
vim +1495 net/xdp/xsk.c
48248366d9de2a Jason Xing 2025-08-11 1460 case XDP_GENERIC_XMIT_BATCH:
48248366d9de2a Jason Xing 2025-08-11 1461 {
48248366d9de2a Jason Xing 2025-08-11 1462 unsigned int batch, batch_alloc_len;
48248366d9de2a Jason Xing 2025-08-11 1463 struct sk_buff **new;
48248366d9de2a Jason Xing 2025-08-11 1464
48248366d9de2a Jason Xing 2025-08-11 1465 if (optlen != sizeof(batch))
48248366d9de2a Jason Xing 2025-08-11 1466 return -EINVAL;
48248366d9de2a Jason Xing 2025-08-11 1467 if (copy_from_sockptr(&batch, optval, sizeof(batch)))
48248366d9de2a Jason Xing 2025-08-11 1468 return -EFAULT;
48248366d9de2a Jason Xing 2025-08-11 1469 if (batch > xs->max_tx_budget)
48248366d9de2a Jason Xing 2025-08-11 1470 return -EACCES;
48248366d9de2a Jason Xing 2025-08-11 1471
48248366d9de2a Jason Xing 2025-08-11 1472 mutex_lock(&xs->mutex);
48248366d9de2a Jason Xing 2025-08-11 1473 if (!batch) {
48248366d9de2a Jason Xing 2025-08-11 1474 kfree(xs->skb_batch);
48248366d9de2a Jason Xing 2025-08-11 1475 xs->generic_xmit_batch = 0;
48248366d9de2a Jason Xing 2025-08-11 1476 goto out;
48248366d9de2a Jason Xing 2025-08-11 1477 }
48248366d9de2a Jason Xing 2025-08-11 1478 batch_alloc_len = sizeof(struct sk_buff *) * batch;
48248366d9de2a Jason Xing 2025-08-11 1479 new = kmalloc(batch_alloc_len, GFP_KERNEL);
48248366d9de2a Jason Xing 2025-08-11 1480 if (!new)
48248366d9de2a Jason Xing 2025-08-11 1481 return -ENOMEM;
mutex_unlock(&xs->mutex); before returning
48248366d9de2a Jason Xing 2025-08-11 1482 if (xs->skb_batch)
48248366d9de2a Jason Xing 2025-08-11 1483 kfree(xs->skb_batch);
48248366d9de2a Jason Xing 2025-08-11 1484
48248366d9de2a Jason Xing 2025-08-11 1485 xs->skb_batch = new;
48248366d9de2a Jason Xing 2025-08-11 1486 xs->generic_xmit_batch = batch;
48248366d9de2a Jason Xing 2025-08-11 1487 out:
48248366d9de2a Jason Xing 2025-08-11 1488 mutex_unlock(&xs->mutex);
48248366d9de2a Jason Xing 2025-08-11 1489 return 0;
48248366d9de2a Jason Xing 2025-08-11 1490 }
c0c77d8fb787cf Björn Töpel 2018-05-02 1491 default:
c0c77d8fb787cf Björn Töpel 2018-05-02 1492 break;
c0c77d8fb787cf Björn Töpel 2018-05-02 1493 }
c0c77d8fb787cf Björn Töpel 2018-05-02 1494
c0c77d8fb787cf Björn Töpel 2018-05-02 @1495 return -ENOPROTOOPT;
c0c77d8fb787cf Björn Töpel 2018-05-02 1496 }
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists