Hi Xuan, Thank you for the patch! Yet something to improve: [auto build test ERROR on net-next/master] url: https://github.com/intel-lab-lkp/linux/commits/Xuan-Zhuo/xsk-support-use-vaddr-as-ring/20230214-095210 patch link: https://lore.kernel.org/r/20230214015112.12094-1-xuanzhuo%40linux.alibaba.com patch subject: [PATCH net-next v3] xsk: support use vaddr as ring config: sh-allmodconfig (https://download.01.org/0day-ci/archive/20230215/202302150059.M0lYLPTa-lkp@xxxxxxxxx/config) compiler: sh4-linux-gcc (GCC) 12.1.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/a2f7f17c84b0f4af1d0a8903b2b5e8e558f8359a git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Xuan-Zhuo/xsk-support-use-vaddr-as-ring/20230214-095210 git checkout a2f7f17c84b0f4af1d0a8903b2b5e8e558f8359a # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=sh olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=sh SHELL=/bin/bash net/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Link: https://lore.kernel.org/oe-kbuild-all/202302150059.M0lYLPTa-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): net/xdp/xsk.c: In function 'xsk_mmap': >> net/xdp/xsk.c:1323:16: error: implicit declaration of function 'remap_vmalloc_range'; did you mean 'ida_alloc_range'? [-Werror=implicit-function-declaration] 1323 | return remap_vmalloc_range(vma, q->ring, 0); | ^~~~~~~~~~~~~~~~~~~ | ida_alloc_range cc1: some warnings being treated as errors vim +1323 net/xdp/xsk.c 1290 1291 static int xsk_mmap(struct file *file, struct socket *sock, 1292 struct vm_area_struct *vma) 1293 { 1294 loff_t offset = (loff_t)vma->vm_pgoff << PAGE_SHIFT; 1295 unsigned long size = vma->vm_end - vma->vm_start; 1296 struct xdp_sock *xs = xdp_sk(sock->sk); 1297 struct xsk_queue *q = NULL; 1298 1299 if (READ_ONCE(xs->state) != XSK_READY) 1300 return -EBUSY; 1301 1302 if (offset == XDP_PGOFF_RX_RING) { 1303 q = READ_ONCE(xs->rx); 1304 } else if (offset == XDP_PGOFF_TX_RING) { 1305 q = READ_ONCE(xs->tx); 1306 } else { 1307 /* Matches the smp_wmb() in XDP_UMEM_REG */ 1308 smp_rmb(); 1309 if (offset == XDP_UMEM_PGOFF_FILL_RING) 1310 q = READ_ONCE(xs->fq_tmp); 1311 else if (offset == XDP_UMEM_PGOFF_COMPLETION_RING) 1312 q = READ_ONCE(xs->cq_tmp); 1313 } 1314 1315 if (!q) 1316 return -EINVAL; 1317 1318 /* Matches the smp_wmb() in xsk_init_queue */ 1319 smp_rmb(); 1320 if (size > PAGE_ALIGN(q->ring_size)) 1321 return -EINVAL; 1322 > 1323 return remap_vmalloc_range(vma, q->ring, 0); 1324 } 1325 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests