Hi Maciej, kernel test robot noticed the following build warnings: [auto build test WARNING 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-randconfig-014-20231208 (https://download.01.org/0day-ci/archive/20231209/202312090113.kESWoklw-lkp@xxxxxxxxx/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231209/202312090113.kESWoklw-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202312090113.kESWoklw-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): net/core/filter.c: In function '__shrink_data': net/core/filter.c:4102:3: error: implicit declaration of function 'xsk_buff_get_tail'; did you mean 'xsk_buff_get_frag'? [-Werror=implicit-function-declaration] 4102 | xsk_buff_get_tail(xdp)->data_end -= shrink; | ^~~~~~~~~~~~~~~~~ | xsk_buff_get_frag net/core/filter.c:4102:25: error: invalid type argument of '->' (have 'int') 4102 | xsk_buff_get_tail(xdp)->data_end -= shrink; | ^~ net/core/filter.c: In function 'shrink_data': >> net/core/filter.c:4115:12: warning: assignment to 'struct xdp_buff *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 4115 | zc_frag = xsk_buff_get_tail(xdp); | ^ net/core/filter.c:4117:4: error: implicit declaration of function 'xsk_buff_tail_del'; did you mean 'xsk_buff_alloc'? [-Werror=implicit-function-declaration] 4117 | xsk_buff_tail_del(zc_frag); | ^~~~~~~~~~~~~~~~~ | xsk_buff_alloc cc1: some warnings being treated as errors vim +4115 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