Re: [PATCH net-next] xsk: use __xsk_rcv_zc_safe for ZC multi-buffer Rx processing
From: kernel test robot <hidden>
Date: 2026-03-10 22:10:35
Also in:
bpf, llvm, oe-kbuild-all
Hi Maciej, kernel test robot noticed the following build errors: [auto build test ERROR on net-next/main] url: https://github.com/intel-lab-lkp/linux/commits/Maciej-Fijalkowski/xsk-use-__xsk_rcv_zc_safe-for-ZC-multi-buffer-Rx-processing/20260310-222557 base: net-next/main patch link: https://lore.kernel.org/r/20260310133024.422464-1-maciej.fijalkowski%40intel.com patch subject: [PATCH net-next] xsk: use __xsk_rcv_zc_safe for ZC multi-buffer Rx processing config: sparc64-allmodconfig (https://download.01.org/0day-ci/archive/20260311/202603110534.EYw1bSxj-lkp@intel.com/config) compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 122f0b13a237b5024747b4ee99002590cc9a220a) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260311/202603110534.EYw1bSxj-lkp@intel.com/reproduce) 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 [off-list ref] | Closes: https://lore.kernel.org/oe-kbuild-all/202603110534.EYw1bSxj-lkp@intel.com/ (local) All errors (new ones prefixed by >>):
quoted
net/xdp/xsk.c:188:2: error: call to undeclared function '__xsk_rcv_zc_safe'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
188 | __xsk_rcv_zc_safe(xs, xskb, len, contd);
| ^
net/xdp/xsk.c:188:2: note: did you mean '__xsk_rcv_zc'?
net/xdp/xsk.c:146:12: note: '__xsk_rcv_zc' declared here
146 | static int __xsk_rcv_zc(struct xdp_sock *xs, struct xdp_buff_xsk *xskb, u32 len,
| ^
1 error generated.
vim +/__xsk_rcv_zc_safe +188 net/xdp/xsk.c
162
163 static int xsk_rcv_zc(struct xdp_sock *xs, struct xdp_buff *xdp, u32 len)
164 {
165 struct xdp_buff_xsk *xskb = container_of(xdp, struct xdp_buff_xsk, xdp);
166 u32 frags = xdp_buff_has_frags(xdp);
167 struct xdp_buff_xsk *pos, *tmp;
168 struct list_head *xskb_list;
169 u32 contd = 0;
170 u32 num_desc;
171 int err;
172
173 if (likely(!frags)) {
174 err = __xsk_rcv_zc(xs, xskb, len, contd);
175 if (err)
176 goto err;
177 return 0;
178 }
179
180 contd = XDP_PKT_CONTD;
181 num_desc = xdp_get_shared_info_from_buff(xdp)->nr_frags + 1;
182 if (xskq_prod_nb_free(xs->rx, num_desc) < num_desc) {
183 xs->rx_queue_full++;
184 err = -ENOBUFS;
185 goto err;
186 }
187
> 188 __xsk_rcv_zc_safe(xs, xskb, len, contd);
189 xskb_list = &xskb->pool->xskb_list;
190 list_for_each_entry_safe(pos, tmp, xskb_list, list_node) {
191 if (list_is_singular(xskb_list))
192 contd = 0;
193 len = pos->xdp.data_end - pos->xdp.data;
194 __xsk_rcv_zc_safe(xs, pos, len, contd);
195 list_del_init(&pos->list_node);
196 }
197
198 return 0;
199 err:
200 xsk_buff_free(xdp);
201 return err;
202 }
203
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki