Hi Denis, I love your patch! Yet something to improve:
[auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Denis-Kirjanov/xen-networking-add-XDP-support-to-xen-netfront/20200622-172512 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 29a720c1042f469c8fea317cb5e7f496b116e07d config: i386-debian-10.3 (attached as .config) compiler: gcc-9 (Debian 9.3.0-13) 9.3.0 reproduce (this is a W=1 build): # save the attached .config to linux build tree make W=1 ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> All error/warnings (new ones prefixed by >>): drivers/net/xen-netfront.c: In function 'xennet_xdp_xmit_one': drivers/net/xen-netfront.c:581:31: warning: variable 'tx' set but not used [-Wunused-but-set-variable] 581 | struct xen_netif_tx_request *tx; | ^~ drivers/net/xen-netfront.c: In function 'xennet_run_xdp': >> drivers/net/xen-netfront.c:871:10: error: implicit declaration of function >> 'convert_to_xdp_frame'; did you mean 'xdp_convert_zc_to_xdp_frame'? >> [-Werror=implicit-function-declaration] 871 | xdpf = convert_to_xdp_frame(xdp); | ^~~~~~~~~~~~~~~~~~~~ | xdp_convert_zc_to_xdp_frame >> drivers/net/xen-netfront.c:871:8: warning: assignment to 'struct xdp_frame >> *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 871 | xdpf = convert_to_xdp_frame(xdp); | ^ drivers/net/xen-netfront.c: In function 'store_rxbuf': drivers/net/xen-netfront.c:2424:16: warning: variable 'target' set but not used [-Wunused-but-set-variable] 2424 | unsigned long target; | ^~~~~~ cc1: some warnings being treated as errors vim +871 drivers/net/xen-netfront.c 851 852 static u32 xennet_run_xdp(struct netfront_queue *queue, struct page *pdata, 853 struct xen_netif_rx_response *rx, struct bpf_prog *prog, 854 struct xdp_buff *xdp, bool *need_xdp_flush) 855 { 856 struct xdp_frame *xdpf; 857 u32 len = rx->status; 858 u32 act = XDP_PASS; 859 int err; 860 861 xdp->data_hard_start = page_address(pdata); 862 xdp->data = xdp->data_hard_start + XDP_PACKET_HEADROOM; 863 xdp_set_data_meta_invalid(xdp); 864 xdp->data_end = xdp->data + len; 865 xdp->rxq = &queue->xdp_rxq; 866 867 act = bpf_prog_run_xdp(prog, xdp); 868 switch (act) { 869 case XDP_TX: 870 get_page(pdata); > 871 xdpf = convert_to_xdp_frame(xdp); 872 err = xennet_xdp_xmit(queue->info->netdev, 1, &xdpf, 0); 873 if (unlikely(err < 0)) 874 trace_xdp_exception(queue->info->netdev, prog, act); 875 break; 876 case XDP_REDIRECT: 877 get_page(pdata); 878 err = xdp_do_redirect(queue->info->netdev, xdp, prog); 879 *need_xdp_flush = true; 880 if (unlikely(err)) 881 trace_xdp_exception(queue->info->netdev, prog, act); 882 break; 883 case XDP_PASS: 884 case XDP_DROP: 885 break; 886 887 case XDP_ABORTED: 888 trace_xdp_exception(queue->info->netdev, prog, act); 889 break; 890 891 default: 892 bpf_warn_invalid_xdp_action(act); 893 } 894 895 return act; 896 } 897 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip