All of lore.kernel.org
 help / color / mirror / Atom feed
* [sashal-linux-stable:pending-5.13 40/569] drivers/net/ethernet/intel/igbvf/netdev.c:356:52: sparse: sparse: incorrect type in argument 5 (different base types)
@ 2021-07-19  8:27 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-07-19  8:27 UTC (permalink / raw)
  To: kbuild-all

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git pending-5.13
head:   af8541612e8f9f67ef47e6a773223f32a139ba69
commit: cdf06d30fa45e9ef387aae38ba80d13eea048508 [40/569] igb: handle vlan types with checker enabled
config: x86_64-randconfig-s021-20210718 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-341-g8af24329-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/commit/?id=cdf06d30fa45e9ef387aae38ba80d13eea048508
        git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
        git fetch --no-tags sashal-linux-stable pending-5.13
        git checkout cdf06d30fa45e9ef387aae38ba80d13eea048508
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
   drivers/net/ethernet/intel/igbvf/netdev.c:203:48: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned long long [usertype] pkt_addr @@     got restricted __le64 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:203:48: sparse:     expected unsigned long long [usertype] pkt_addr
   drivers/net/ethernet/intel/igbvf/netdev.c:203:48: sparse:     got restricted __le64 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:205:48: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned long long [usertype] hdr_addr @@     got restricted __le64 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:205:48: sparse:     expected unsigned long long [usertype] hdr_addr
   drivers/net/ethernet/intel/igbvf/netdev.c:205:48: sparse:     got restricted __le64 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:207:48: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned long long [usertype] pkt_addr @@     got restricted __le64 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:207:48: sparse:     expected unsigned long long [usertype] pkt_addr
   drivers/net/ethernet/intel/igbvf/netdev.c:207:48: sparse:     got restricted __le64 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:261:19: sparse: sparse: cast to restricted __le32
   drivers/net/ethernet/intel/igbvf/netdev.c:276:25: sparse: sparse: cast to restricted __le16
   drivers/net/ethernet/intel/igbvf/netdev.c:282:26: sparse: sparse: cast to restricted __le16
>> drivers/net/ethernet/intel/igbvf/netdev.c:356:52: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected restricted __le16 [usertype] vlan @@     got unsigned short [usertype] vlan @@
   drivers/net/ethernet/intel/igbvf/netdev.c:356:52: sparse:     expected restricted __le16 [usertype] vlan
   drivers/net/ethernet/intel/igbvf/netdev.c:356:52: sparse:     got unsigned short [usertype] vlan
   drivers/net/ethernet/intel/igbvf/netdev.c:371:27: sparse: sparse: cast to restricted __le32
   drivers/net/ethernet/intel/igbvf/netdev.c:797:45: sparse: sparse: restricted __le32 degrades to integer
   drivers/net/ethernet/intel/igbvf/netdev.c:1992:41: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] vlan_macip_lens @@     got restricted __le32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:1992:41: sparse:     expected unsigned int [usertype] vlan_macip_lens
   drivers/net/ethernet/intel/igbvf/netdev.c:1992:41: sparse:     got restricted __le32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:1994:41: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] type_tucmd_mlhl @@     got restricted __le32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:1994:41: sparse:     expected unsigned int [usertype] type_tucmd_mlhl
   drivers/net/ethernet/intel/igbvf/netdev.c:1994:41: sparse:     got restricted __le32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:1995:41: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] mss_l4len_idx @@     got restricted __le32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:1995:41: sparse:     expected unsigned int [usertype] mss_l4len_idx
   drivers/net/ethernet/intel/igbvf/netdev.c:1995:41: sparse:     got restricted __le32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:2059:46: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected restricted __wsum [usertype] diff @@     got restricted __be32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:2059:46: sparse:     expected restricted __wsum [usertype] diff
   drivers/net/ethernet/intel/igbvf/netdev.c:2059:46: sparse:     got restricted __be32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:2254:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned long long [usertype] buffer_addr @@     got restricted __le64 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:2254:43: sparse:     expected unsigned long long [usertype] buffer_addr
   drivers/net/ethernet/intel/igbvf/netdev.c:2254:43: sparse:     got restricted __le64 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:2255:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] cmd_type_len @@     got restricted __le32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:2255:44: sparse:     expected unsigned int [usertype] cmd_type_len
   drivers/net/ethernet/intel/igbvf/netdev.c:2255:44: sparse:     got restricted __le32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:2257:45: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] olinfo_status @@     got restricted __le32 [usertype] @@
   drivers/net/ethernet/intel/igbvf/netdev.c:2257:45: sparse:     expected unsigned int [usertype] olinfo_status
   drivers/net/ethernet/intel/igbvf/netdev.c:2257:45: sparse:     got restricted __le32 [usertype]
   drivers/net/ethernet/intel/igbvf/netdev.c:2263:36: sparse: sparse: invalid assignment: |=
   drivers/net/ethernet/intel/igbvf/netdev.c:2263:36: sparse:    left side has type unsigned int
   drivers/net/ethernet/intel/igbvf/netdev.c:2263:36: sparse:    right side has type restricted __le32

vim +356 drivers/net/ethernet/intel/igbvf/netdev.c

d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  234  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  235  /**
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  236   * igbvf_clean_rx_irq - Send received data up the network stack; legacy
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  237   * @adapter: board private structure
b50f7bca5e83d9e8 drivers/net/ethernet/intel/igbvf/netdev.c Jesse Brandeburg 2020-09-25  238   * @work_done: output parameter used to indicate completed work
b50f7bca5e83d9e8 drivers/net/ethernet/intel/igbvf/netdev.c Jesse Brandeburg 2020-09-25  239   * @work_to_do: input parameter setting limit of work
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  240   *
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  241   * the return value indicates whether actual cleaning was done, there
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  242   * is no guarantee that everything was cleaned
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  243   **/
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  244  static bool igbvf_clean_rx_irq(struct igbvf_adapter *adapter,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  245  			       int *work_done, int work_to_do)
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  246  {
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  247  	struct igbvf_ring *rx_ring = adapter->rx_ring;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  248  	struct net_device *netdev = adapter->netdev;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  249  	struct pci_dev *pdev = adapter->pdev;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  250  	union e1000_adv_rx_desc *rx_desc, *next_rxd;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  251  	struct igbvf_buffer *buffer_info, *next_buffer;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  252  	struct sk_buff *skb;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  253  	bool cleaned = false;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  254  	int cleaned_count = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  255  	unsigned int total_bytes = 0, total_packets = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  256  	unsigned int i;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  257  	u32 length, hlen, staterr;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  258  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  259  	i = rx_ring->next_to_clean;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  260  	rx_desc = IGBVF_RX_DESC_ADV(*rx_ring, i);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  261  	staterr = le32_to_cpu(rx_desc->wb.upper.status_error);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  262  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  263  	while (staterr & E1000_RXD_STAT_DD) {
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  264  		if (*work_done >= work_to_do)
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  265  			break;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  266  		(*work_done)++;
2d0bb1c1f4524bef drivers/net/igbvf/netdev.c                Jeff Kirsher     2010-08-08  267  		rmb(); /* read descriptor and rx_buffer_info after status DD */
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  268  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  269  		buffer_info = &rx_ring->buffer_info[i];
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  270  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  271  		/* HW will not DMA in data larger than the given buffer, even
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  272  		 * if it parses the (NFS, of course) header to be larger.  In
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  273  		 * that case, it fills the header buffer and spills the rest
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  274  		 * into the page.
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  275  		 */
0340501b1cf7dc67 drivers/net/ethernet/intel/igbvf/netdev.c Jeff Kirsher     2015-01-21  276  		hlen = (le16_to_cpu(rx_desc->wb.lower.lo_dword.hs_rss.hdr_info)
0340501b1cf7dc67 drivers/net/ethernet/intel/igbvf/netdev.c Jeff Kirsher     2015-01-21  277  		       & E1000_RXDADV_HDRBUFLEN_MASK) >>
0340501b1cf7dc67 drivers/net/ethernet/intel/igbvf/netdev.c Jeff Kirsher     2015-01-21  278  		       E1000_RXDADV_HDRBUFLEN_SHIFT;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  279  		if (hlen > adapter->rx_ps_hdr_size)
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  280  			hlen = adapter->rx_ps_hdr_size;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  281  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  282  		length = le16_to_cpu(rx_desc->wb.upper.length);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  283  		cleaned = true;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  284  		cleaned_count++;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  285  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  286  		skb = buffer_info->skb;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  287  		prefetch(skb->data - NET_IP_ALIGN);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  288  		buffer_info->skb = NULL;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  289  		if (!adapter->rx_ps_hdr_size) {
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  290  			dma_unmap_single(&pdev->dev, buffer_info->dma,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  291  					 adapter->rx_buffer_len,
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  292  					 DMA_FROM_DEVICE);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  293  			buffer_info->dma = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  294  			skb_put(skb, length);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  295  			goto send_up;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  296  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  297  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  298  		if (!skb_shinfo(skb)->nr_frags) {
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  299  			dma_unmap_single(&pdev->dev, buffer_info->dma,
92d947b77436437f drivers/net/igbvf/netdev.c                Alexander Duyck  2009-07-23  300  					 adapter->rx_ps_hdr_size,
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  301  					 DMA_FROM_DEVICE);
fae5ecaee3e6265c drivers/net/ethernet/intel/igbvf/netdev.c Stefan Assmann   2015-08-06  302  			buffer_info->dma = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  303  			skb_put(skb, hlen);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  304  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  305  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  306  		if (length) {
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  307  			dma_unmap_page(&pdev->dev, buffer_info->page_dma,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  308  				       PAGE_SIZE / 2,
123e9f1afe7b86f7 drivers/net/igbvf/netdev.c                Nick Nunley      2010-04-27  309  				       DMA_FROM_DEVICE);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  310  			buffer_info->page_dma = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  311  
ec857fd40da41d7c drivers/net/igbvf/netdev.c                Koki Sanagi      2010-04-27  312  			skb_fill_page_desc(skb, skb_shinfo(skb)->nr_frags,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  313  					   buffer_info->page,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  314  					   buffer_info->page_offset,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  315  					   length);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  316  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  317  			if ((adapter->rx_buffer_len > (PAGE_SIZE / 2)) ||
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  318  			    (page_count(buffer_info->page) != 1))
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  319  				buffer_info->page = NULL;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  320  			else
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  321  				get_page(buffer_info->page);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  322  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  323  			skb->len += length;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  324  			skb->data_len += length;
7b8b59617ead5acc drivers/net/ethernet/intel/igbvf/netdev.c Eric Dumazet     2011-10-20  325  			skb->truesize += PAGE_SIZE / 2;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  326  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  327  send_up:
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  328  		i++;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  329  		if (i == rx_ring->count)
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  330  			i = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  331  		next_rxd = IGBVF_RX_DESC_ADV(*rx_ring, i);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  332  		prefetch(next_rxd);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  333  		next_buffer = &rx_ring->buffer_info[i];
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  334  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  335  		if (!(staterr & E1000_RXD_STAT_EOP)) {
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  336  			buffer_info->skb = next_buffer->skb;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  337  			buffer_info->dma = next_buffer->dma;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  338  			next_buffer->skb = skb;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  339  			next_buffer->dma = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  340  			goto next_desc;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  341  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  342  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  343  		if (staterr & E1000_RXDEXT_ERR_FRAME_ERR_MASK) {
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  344  			dev_kfree_skb_irq(skb);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  345  			goto next_desc;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  346  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  347  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  348  		total_bytes += skb->len;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  349  		total_packets++;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  350  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  351  		igbvf_rx_checksum_adv(adapter, staterr, skb);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  352  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  353  		skb->protocol = eth_type_trans(skb, netdev);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  354  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  355  		igbvf_receive_skb(adapter, netdev, skb, staterr,
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07 @356  				  rx_desc->wb.upper.vlan);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  357  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  358  next_desc:
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  359  		rx_desc->wb.upper.status_error = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  360  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  361  		/* return some buffers to hardware, one at a time is too slow */
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  362  		if (cleaned_count >= IGBVF_RX_BUFFER_WRITE) {
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  363  			igbvf_alloc_rx_buffers(rx_ring, cleaned_count);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  364  			cleaned_count = 0;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  365  		}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  366  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  367  		/* use prefetched values */
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  368  		rx_desc = next_rxd;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  369  		buffer_info = next_buffer;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  370  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  371  		staterr = le32_to_cpu(rx_desc->wb.upper.status_error);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  372  	}
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  373  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  374  	rx_ring->next_to_clean = i;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  375  	cleaned_count = igbvf_desc_unused(rx_ring);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  376  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  377  	if (cleaned_count)
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  378  		igbvf_alloc_rx_buffers(rx_ring, cleaned_count);
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  379  
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  380  	adapter->total_rx_packets += total_packets;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  381  	adapter->total_rx_bytes += total_bytes;
55c05dd0295d8334 drivers/net/ethernet/intel/igbvf/netdev.c Tobias Klauser   2017-04-06  382  	netdev->stats.rx_bytes += total_bytes;
55c05dd0295d8334 drivers/net/ethernet/intel/igbvf/netdev.c Tobias Klauser   2017-04-06  383  	netdev->stats.rx_packets += total_packets;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  384  	return cleaned;
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  385  }
d4e0fe01a38a0735 drivers/net/igbvf/netdev.c                Alexander Duyck  2009-04-07  386  

:::::: The code at line 356 was first introduced by commit
:::::: d4e0fe01a38a073568aee541a0247fe734095979 igbvf: add new driver to support 82576 virtual functions

:::::: TO: Alexander Duyck <alexander.h.duyck@intel.com>
:::::: CC: David S. Miller <davem@davemloft.net>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 44156 bytes --]

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

only message in thread, other threads:[~2021-07-19  8:27 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-19  8:27 [sashal-linux-stable:pending-5.13 40/569] drivers/net/ethernet/intel/igbvf/netdev.c:356:52: sparse: sparse: incorrect type in argument 5 (different base types) 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.