CC: [email protected]
In-Reply-To: <[email protected]>
References: <[email protected]>
TO: "Toke Høiland-Jørgensen" <[email protected]>

Hi "Toke,

I love your patch! Perhaps something to improve:

[auto build test WARNING on bpf-next/master]

url:    
https://github.com/0day-ci/linux/commits/Toke-H-iland-J-rgensen/Add-support-for-transmitting-packets-using-XDP-in-bpf_prog_run/20220220-174340
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
:::::: branch date: 27 hours ago
:::::: commit date: 27 hours ago
config: i386-randconfig-m021-20220221 
(https://download.01.org/0day-ci/archive/20220221/[email protected]/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

New smatch warnings:
net/bpf/test_run.c:171 xdp_test_run_setup() warn: ignoring unreachable code.

Old smatch warnings:
net/bpf/test_run.c:1316 bpf_prog_test_run_xdp() error: uninitialized symbol 
'retval'.

vim +171 net/bpf/test_run.c

b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  148  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  149  static int 
xdp_test_run_setup(struct xdp_test_data *xdp, struct xdp_buff *orig_ctx)
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  150  {
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  151   struct xdp_mem_info mem 
= {};
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  152   struct page_pool *pp;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  153   int err = ENOMEM;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  154   struct page_pool_params 
pp_params = {
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  155           .order = 0,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  156           .flags = 0,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  157           .pool_size = 
xdp->batch_size,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  158           .nid = 
NUMA_NO_NODE,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  159           .max_len = 
TEST_XDP_FRAME_SIZE,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  160           .init_callback 
= xdp_test_run_init_page,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  161           .init_arg = xdp,
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  162   };
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  163  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  164   xdp->frames = 
kvmalloc_array(xdp->batch_size, sizeof(void *), GFP_KERNEL);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  165   if (!xdp->frames)
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  166           return -ENOMEM;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  167  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  168   xdp->skbs = 
kvmalloc_array(xdp->batch_size, sizeof(void *), GFP_KERNEL);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  169   if (!xdp->skbs) {
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  170           goto err_skbs;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18 @171           return -ENOMEM;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  172   }
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  173  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  174   pp = 
page_pool_create(&pp_params);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  175   if (IS_ERR(pp)) {
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  176           err = 
PTR_ERR(pp);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  177           goto err_pp;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  178   }
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  179  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  180   /* will copy 'mem.id' 
into pp->xdp_mem_id */
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  181   err = 
xdp_reg_mem_model(&mem, MEM_TYPE_PAGE_POOL, pp);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  182   if (err)
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  183           goto err_mmodel;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  184  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  185   xdp->pp = pp;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  186  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  187   /* We create a 'fake' 
RXQ referencing the original dev, but with an
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  188    * xdp_mem_info 
pointing to our page_pool
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  189    */
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  190   
xdp_rxq_info_reg(&xdp->rxq, orig_ctx->rxq->dev, 0, 0);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  191   xdp->rxq.mem.type = 
MEM_TYPE_PAGE_POOL;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  192   xdp->rxq.mem.id = 
pp->xdp_mem_id;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  193   xdp->dev = 
orig_ctx->rxq->dev;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  194   xdp->orig_ctx = 
orig_ctx;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  195  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  196   return 0;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  197  
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  198  err_mmodel:
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  199   page_pool_destroy(pp);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  200  err_pp:
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  201   kfree(xdp->skbs);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  202  err_skbs:
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  203   kfree(xdp->frames);
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  204   return err;
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  205  }
b361b4c1773c38 Toke Høiland-Jørgensen 2022-02-18  206  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to