All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [alobakin:xdp_hints 5/52] net/bpf/core.c:648 __xdp_build_skb_from_frame() error: uninitialized symbol 'nr_frags'.
Date: Sun, 03 Jul 2022 07:10:19 +0800	[thread overview]
Message-ID: <202207030728.VX55VQmL-lkp@intel.com> (raw)

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

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Alexander Lobakin <alexandr.lobakin@intel.com>

tree:   https://github.com/alobakin/linux xdp_hints
head:   e9f4215398901c2e3f477da53abc668ce7b7e320
commit: 40ce0c8bf2731c92fb015a03a7f9b26d90d547d0 [5/52] net, xdp: decouple XDP code from the core networking code
:::::: branch date: 4 days ago
:::::: commit date: 4 days ago
config: x86_64-randconfig-m001 (https://download.01.org/0day-ci/archive/20220703/202207030728.VX55VQmL-lkp(a)intel.com/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
net/bpf/core.c:648 __xdp_build_skb_from_frame() error: uninitialized symbol 'nr_frags'.

vim +/nr_frags +648 net/bpf/core.c

65e6dcf73398dd net/core/xdp.c Lorenzo Bianconi 2021-01-29  615  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  616  struct sk_buff *__xdp_build_skb_from_frame(struct xdp_frame *xdpf,
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  617  					   struct sk_buff *skb,
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  618  					   struct net_device *dev)
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  619  {
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  620  	struct skb_shared_info *sinfo = xdp_get_shared_info_from_frame(xdpf);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  621  	unsigned int headroom, frame_size;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  622  	void *hard_start;
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  623  	u8 nr_frags;
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  624  
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  625  	/* xdp frags frame */
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  626  	if (unlikely(xdp_frame_has_frags(xdpf)))
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  627  		nr_frags = sinfo->nr_frags;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  628  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  629  	/* Part of headroom was reserved to xdpf */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  630  	headroom = sizeof(*xdpf) + xdpf->headroom;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  631  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  632  	/* Memory size backing xdp_frame data already have reserved
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  633  	 * room for build_skb to place skb_shared_info in tailroom.
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  634  	 */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  635  	frame_size = xdpf->frame_sz;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  636  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  637  	hard_start = xdpf->data - headroom;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  638  	skb = build_skb_around(skb, hard_start, frame_size);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  639  	if (unlikely(!skb))
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  640  		return NULL;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  641  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  642  	skb_reserve(skb, headroom);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  643  	__skb_put(skb, xdpf->len);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  644  	if (xdpf->metasize)
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  645  		skb_metadata_set(skb, xdpf->metasize);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  646  
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  647  	if (unlikely(xdp_frame_has_frags(xdpf)))
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21 @648  		xdp_update_skb_shared_info(skb, nr_frags,
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  649  					   sinfo->xdp_frags_size,
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  650  					   nr_frags * xdpf->frame_sz,
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  651  					   xdp_frame_is_frag_pfmemalloc(xdpf));
d65a1906b31246 net/core/xdp.c Lorenzo Bianconi 2022-01-21  652  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  653  	/* Essential SKB info: protocol and skb->dev */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  654  	skb->protocol = eth_type_trans(skb, dev);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  655  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  656  	/* Optional SKB info, currently missing:
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  657  	 * - HW checksum info		(skb->ip_summed)
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  658  	 * - HW RX hash			(skb_set_hash)
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  659  	 * - RX ring dev queue index	(skb_record_rx_queue)
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  660  	 */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  661  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  662  	/* Until page_pool get SKB return path, release DMA here */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  663  	xdp_release_frame(xdpf);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  664  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  665  	/* Allow SKB to reuse area used by xdp_frame */
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  666  	xdp_scrub_frame(xdpf);
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  667  
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  668  	return skb;
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  669  }
97a0e1ea7b41c2 net/core/xdp.c Lorenzo Bianconi 2021-01-12  670  EXPORT_SYMBOL_GPL(__xdp_build_skb_from_frame);
89f479f0eccfc8 net/core/xdp.c Lorenzo Bianconi 2021-01-12  671  

:::::: The code at line 648 was first introduced by commit
:::::: d65a1906b31246492449eafe9cace188cb59e26c net: xdp: add xdp_update_skb_shared_info utility routine

:::::: TO: Lorenzo Bianconi <lorenzo@kernel.org>
:::::: CC: Alexei Starovoitov <ast@kernel.org>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

                 reply	other threads:[~2022-07-02 23:10 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202207030728.VX55VQmL-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.