[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202312090104.6EOsoGVa-lkp@intel.com>
Date: Sat, 9 Dec 2023 01:29:32 +0800
From: kernel test robot <lkp@...el.com>
To: Maciej Fijalkowski <maciej.fijalkowski@...el.com>, bpf@...r.kernel.org,
ast@...nel.org, daniel@...earbox.net, andrii@...nel.org
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
netdev@...r.kernel.org, magnus.karlsson@...el.com, bjorn@...nel.org,
maciej.fijalkowski@...el.com, echaudro@...hat.com,
lorenzo@...nel.org
Subject: Re: [PATCH bpf 2/3] net: fix usage of multi-buffer BPF helper for ZC
AF_XDP
Hi Maciej,
kernel test robot noticed the following build errors:
[auto build test ERROR on bpf/master]
url: https://github.com/intel-lab-lkp/linux/commits/Maciej-Fijalkowski/xsk-recycle-buffer-in-case-Rx-queue-was-full/20231208-193306
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git master
patch link: https://lore.kernel.org/r/20231208112945.313687-3-maciej.fijalkowski%40intel.com
patch subject: [PATCH bpf 2/3] net: fix usage of multi-buffer BPF helper for ZC AF_XDP
config: i386-buildonly-randconfig-003-20231208 (https://download.01.org/0day-ci/archive/20231209/202312090104.6EOsoGVa-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231209/202312090104.6EOsoGVa-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 <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312090104.6EOsoGVa-lkp@intel.com/
All errors (new ones prefixed by >>):
>> net/core/filter.c:4102:3: error: call to undeclared function 'xsk_buff_get_tail'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
xsk_buff_get_tail(xdp)->data_end -= shrink;
^
net/core/filter.c:4102:3: note: did you mean 'xsk_buff_get_frag'?
include/net/xdp_sock_drv.h:324:32: note: 'xsk_buff_get_frag' declared here
static inline struct xdp_buff *xsk_buff_get_frag(struct xdp_buff *first)
^
>> net/core/filter.c:4102:27: error: member reference type 'int' is not a pointer
xsk_buff_get_tail(xdp)->data_end -= shrink;
~~~~~~~~~~~~~~~~~~~~~~ ^
net/core/filter.c:4115:14: error: call to undeclared function 'xsk_buff_get_tail'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
zc_frag = xsk_buff_get_tail(xdp);
^
>> net/core/filter.c:4115:12: error: incompatible integer to pointer conversion assigning to 'struct xdp_buff *' from 'int' [-Wint-conversion]
zc_frag = xsk_buff_get_tail(xdp);
^ ~~~~~~~~~~~~~~~~~~~~~~
>> net/core/filter.c:4117:4: error: call to undeclared function 'xsk_buff_tail_del'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
xsk_buff_tail_del(zc_frag);
^
5 errors generated.
vim +/xsk_buff_get_tail +4102 net/core/filter.c
4097
4098 static void __shrink_data(struct xdp_buff *xdp, struct xdp_mem_info *mem_info,
4099 skb_frag_t *frag, int shrink)
4100 {
4101 if (mem_info->type == MEM_TYPE_XSK_BUFF_POOL)
> 4102 xsk_buff_get_tail(xdp)->data_end -= shrink;
4103 skb_frag_size_sub(frag, shrink);
4104 }
4105
4106 static bool shrink_data(struct xdp_buff *xdp, skb_frag_t *frag, int shrink)
4107 {
4108 struct xdp_mem_info *mem_info = &xdp->rxq->mem;
4109
4110 if (skb_frag_size(frag) == shrink) {
4111 struct page *page = skb_frag_page(frag);
4112 struct xdp_buff *zc_frag = NULL;
4113
4114 if (mem_info->type == MEM_TYPE_XSK_BUFF_POOL) {
> 4115 zc_frag = xsk_buff_get_tail(xdp);
4116 xdp_buff_clear_frags_flag(zc_frag);
> 4117 xsk_buff_tail_del(zc_frag);
4118 }
4119
4120 __xdp_return(page_address(page), mem_info, false, zc_frag);
4121 return true;
4122 }
4123 __shrink_data(xdp, mem_info, frag, shrink);
4124 return false;
4125 }
4126
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists