All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: Re: [PATCH bpf-next v8 1/5] bpf: Add "live packet" mode for XDP in BPF_PROG_RUN
Date: Mon, 21 Feb 2022 21:18:10 +0800	[thread overview]
Message-ID: <202202212120.trwvhyio-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 6041 bytes --]

CC: kbuild-all(a)lists.01.org
In-Reply-To: <20220218175029.330224-2-toke@redhat.com>
References: <20220218175029.330224-2-toke@redhat.com>
TO: "Toke Høiland-Jørgensen" <toke@redhat.com>

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/202202212120.trwvhyio-lkp(a)intel.com/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 <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

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/kbuild-all(a)lists.01.org

WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: kbuild-all@lists.01.org
Subject: [kbuild] Re: [PATCH bpf-next v8 1/5] bpf: Add "live packet" mode for XDP in BPF_PROG_RUN
Date: Mon, 21 Feb 2022 16:43:26 +0300	[thread overview]
Message-ID: <202202212120.trwvhyio-lkp@intel.com> (raw)
In-Reply-To: <20220218175029.330224-2-toke@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 5676 bytes --]

Hi "Toke,

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
config: i386-randconfig-m021-20220221 (https://download.01.org/0day-ci/archive/20220221/202202212120.trwvhyio-lkp(a)intel.com/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 <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

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

vim +171 net/bpf/test_run.c

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;

This needs to be negative -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;

Delete the return.

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  }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org 
_______________________________________________
kbuild mailing list -- kbuild(a)lists.01.org
To unsubscribe send an email to kbuild-leave(a)lists.01.org

             reply	other threads:[~2022-02-21 13:18 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-21 13:18 kernel test robot [this message]
2022-02-21 13:43 ` [kbuild] Re: [PATCH bpf-next v8 1/5] bpf: Add "live packet" mode for XDP in BPF_PROG_RUN Dan Carpenter
  -- strict thread matches above, loose matches on Subject: below --
2022-02-18 17:50 [PATCH bpf-next v8 0/5] Add support for transmitting packets using XDP in bpf_prog_run() Toke Høiland-Jørgensen
2022-02-18 17:50 ` [PATCH bpf-next v8 1/5] bpf: Add "live packet" mode for XDP in BPF_PROG_RUN Toke Høiland-Jørgensen
2022-02-18 17:50 ` [PATCH bpf-next v8 2/5] Documentation/bpf: Add documentation for BPF_PROG_RUN Toke Høiland-Jørgensen
2022-03-02 19:04   ` Alexei Starovoitov
2022-03-02 21:34     ` Toke Høiland-Jørgensen
2022-02-18 17:50 ` [PATCH bpf-next v8 3/5] libbpf: Support batch_size option to bpf_prog_test_run Toke Høiland-Jørgensen
2022-02-18 17:50 ` [PATCH bpf-next v8 4/5] selftests/bpf: Move open_netns() and close_netns() into network_helpers.c Toke Høiland-Jørgensen
2022-02-18 17:50 ` [PATCH bpf-next v8 5/5] selftests/bpf: Add selftest for XDP_REDIRECT in BPF_PROG_RUN Toke Høiland-Jørgensen
2022-02-24  1:19   ` Martin KaFai Lau
2022-02-26 21:32     ` Toke Høiland-Jørgensen
2022-02-18 17:58 ` [PATCH bpf-next v8 0/5] Add support for transmitting packets using XDP in bpf_prog_run() Toke Høiland-Jørgensen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202202212120.trwvhyio-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.