Hi Jesper, Thank you for the patch! Yet something to improve: [auto build test ERROR on bpf-next/master] url: https://github.com/0day-ci/linux/commits/Jesper-Dangaard-Brouer/xdp-introduce-bulking-for-ndo_xdp_xmit-API/20180510-134105 base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master config: i386-randconfig-a1-05100951 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=i386 All errors (new ones prefixed by >>): net/core/xdp.o: In function `__xdp_return': >> net/core/xdp.c:323: undefined reference to `__page_pool_put_page' vim +323 net/core/xdp.c 310 311 static void __xdp_return(void *data, struct xdp_mem_info *mem, bool napi_direct) 312 { 313 struct xdp_mem_allocator *xa; 314 struct page *page; 315 316 switch (mem->type) { 317 case MEM_TYPE_PAGE_POOL: 318 rcu_read_lock(); 319 /* mem->id is valid, checked in xdp_rxq_info_reg_mem_model() */ 320 xa = rhashtable_lookup(mem_id_ht, &mem->id, mem_id_rht_params); 321 page = virt_to_head_page(data); 322 if (xa) > 323 __page_pool_put_page(xa->page_pool, page, napi_direct); 324 else 325 put_page(page); 326 rcu_read_unlock(); 327 break; 328 case MEM_TYPE_PAGE_SHARED: 329 page_frag_free(data); 330 break; 331 case MEM_TYPE_PAGE_ORDER0: 332 page = virt_to_page(data); /* Assumes order0 page*/ 333 put_page(page); 334 break; 335 default: 336 /* Not possible, checked in xdp_rxq_info_reg_mem_model() */ 337 break; 338 } 339 } 340 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation