All of lore.kernel.org
 help / color / mirror / Atom feed
* [alobakin:xdp_hints 5/52] net/bpf/core.c:648 __xdp_build_skb_from_frame() error: uninitialized symbol 'nr_frags'.
@ 2022-07-02 23:10 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-07-02 23:10 UTC (permalink / raw)
  To: kbuild

[-- 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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-07-02 23:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-02 23:10 [alobakin:xdp_hints 5/52] net/bpf/core.c:648 __xdp_build_skb_from_frame() error: uninitialized symbol 'nr_frags' kernel test robot

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.