All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com
Subject: Re: [PATCH next v4 2/5] minmax: Allow min()/max()/clamp() if the arguments have the same signedness.
Date: Fri, 22 Sep 2023 21:13:26 +0800	[thread overview]
Message-ID: <202309222002.aSjj9A5w-lkp@intel.com> (raw)

:::::: 
:::::: Manual check reason: "low confidence static check first_new_problem: drivers/net/ethernet/engleder/tsnep_main.c:1547:25: sparse: sparse: too long token expansion"
:::::: 

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <fe7e6c542e094bfca655abcd323c1c98@AcuMS.aculab.com>
References: <fe7e6c542e094bfca655abcd323c1c98@AcuMS.aculab.com>
TO: David Laight <David.Laight@ACULAB.COM>
TO: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
CC: "'Andy Shevchenko'" <andriy.shevchenko@linux.intel.com>
CC: "'Andrew Morton'" <akpm@linux-foundation.org>
CC: Linux Memory Management List <linux-mm@kvack.org>
CC: "'Matthew Wilcox (Oracle)'" <willy@infradead.org>
CC: "'Christoph Hellwig'" <hch@infradead.org>
CC: "'Jason A. Donenfeld'" <Jason@zx2c4.com>

Hi David,

kernel test robot noticed the following build warnings:

[auto build test WARNING on linux/master]
[also build test WARNING on linus/master v6.6-rc2]
[cannot apply to next-20230918 next-20230921]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/David-Laight/minmax-Add-umin-a-b-and-umax-a-b/20230918-162441
base:   linux/master
patch link:    https://lore.kernel.org/r/fe7e6c542e094bfca655abcd323c1c98%40AcuMS.aculab.com
patch subject: [PATCH next v4 2/5] minmax: Allow min()/max()/clamp() if the arguments have the same signedness.
:::::: branch date: 4 days ago
:::::: commit date: 4 days ago
config: x86_64-randconfig-122-20230922 (https://download.01.org/0day-ci/archive/20230922/202309222002.aSjj9A5w-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230922/202309222002.aSjj9A5w-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202309222002.aSjj9A5w-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/engleder/tsnep_main.c:1547:25: sparse: sparse: too long token expansion

vim +1547 drivers/net/ethernet/engleder/tsnep_main.c

403f69bbdbadb2 Gerhard Engleder 2021-11-19  1457  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1458  static int tsnep_rx_poll_zc(struct tsnep_rx *rx, struct napi_struct *napi,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1459  			    int budget)
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1460  {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1461  	struct tsnep_rx_entry *entry;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1462  	struct netdev_queue *tx_nq;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1463  	struct bpf_prog *prog;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1464  	struct tsnep_tx *tx;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1465  	int desc_available;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1466  	int xdp_status = 0;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1467  	struct page *page;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1468  	int done = 0;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1469  	int length;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1470  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1471  	desc_available = tsnep_rx_desc_available(rx);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1472  	prog = READ_ONCE(rx->adapter->xdp_prog);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1473  	if (prog) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1474  		tx_nq = netdev_get_tx_queue(rx->adapter->netdev,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1475  					    rx->tx_queue_index);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1476  		tx = &rx->adapter->tx[rx->tx_queue_index];
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1477  	}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1478  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1479  	while (likely(done < budget) && (rx->read != rx->write)) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1480  		entry = &rx->entry[rx->read];
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1481  		if ((__le32_to_cpu(entry->desc_wb->properties) &
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1482  		     TSNEP_DESC_OWNER_COUNTER_MASK) !=
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1483  		    (entry->properties & TSNEP_DESC_OWNER_COUNTER_MASK))
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1484  			break;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1485  		done++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1486  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1487  		if (desc_available >= TSNEP_RING_RX_REFILL) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1488  			bool reuse = desc_available >= TSNEP_RING_RX_REUSE;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1489  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1490  			desc_available -= tsnep_rx_refill_zc(rx, desc_available,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1491  							     reuse);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1492  			if (!entry->xdp) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1493  				/* buffer has been reused for refill to prevent
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1494  				 * empty RX ring, thus buffer cannot be used for
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1495  				 * RX processing
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1496  				 */
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1497  				rx->read = (rx->read + 1) & TSNEP_RING_MASK;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1498  				desc_available++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1499  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1500  				rx->dropped++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1501  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1502  				continue;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1503  			}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1504  		}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1505  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1506  		/* descriptor properties shall be read first, because valid data
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1507  		 * is signaled there
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1508  		 */
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1509  		dma_rmb();
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1510  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1511  		prefetch(entry->xdp->data);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1512  		length = __le32_to_cpu(entry->desc_wb->properties) &
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1513  			 TSNEP_DESC_LENGTH_MASK;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1514  		xsk_buff_set_size(entry->xdp, length);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1515  		xsk_buff_dma_sync_for_cpu(entry->xdp, rx->xsk_pool);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1516  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1517  		/* RX metadata with timestamps is in front of actual data,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1518  		 * subtract metadata size to get length of actual data and
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1519  		 * consider metadata size as offset of actual data during RX
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1520  		 * processing
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1521  		 */
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1522  		length -= TSNEP_RX_INLINE_METADATA_SIZE;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1523  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1524  		rx->read = (rx->read + 1) & TSNEP_RING_MASK;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1525  		desc_available++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1526  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1527  		if (prog) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1528  			bool consume;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1529  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1530  			entry->xdp->data += TSNEP_RX_INLINE_METADATA_SIZE;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1531  			entry->xdp->data_meta += TSNEP_RX_INLINE_METADATA_SIZE;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1532  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1533  			consume = tsnep_xdp_run_prog_zc(rx, prog, entry->xdp,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1534  							&xdp_status, tx_nq, tx);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1535  			if (consume) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1536  				rx->packets++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1537  				rx->bytes += length;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1538  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1539  				entry->xdp = NULL;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1540  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1541  				continue;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1542  			}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1543  		}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1544  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1545  		page = page_pool_dev_alloc_pages(rx->page_pool);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1546  		if (page) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21 @1547  			memcpy(page_address(page) + TSNEP_RX_OFFSET,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1548  			       entry->xdp->data - TSNEP_RX_INLINE_METADATA_SIZE,
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1549  			       length + TSNEP_RX_INLINE_METADATA_SIZE);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1550  			tsnep_rx_page(rx, napi, page, length);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1551  		} else {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1552  			rx->dropped++;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1553  		}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1554  		xsk_buff_free(entry->xdp);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1555  		entry->xdp = NULL;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1556  	}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1557  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1558  	if (xdp_status)
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1559  		tsnep_finalize_xdp(rx->adapter, xdp_status, tx_nq, tx);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1560  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1561  	if (desc_available)
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1562  		desc_available -= tsnep_rx_refill_zc(rx, desc_available, false);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1563  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1564  	if (xsk_uses_need_wakeup(rx->xsk_pool)) {
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1565  		if (desc_available)
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1566  			xsk_set_rx_need_wakeup(rx->xsk_pool);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1567  		else
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1568  			xsk_clear_rx_need_wakeup(rx->xsk_pool);
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1569  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1570  		return done;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1571  	}
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1572  
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1573  	return desc_available ? budget : done;
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1574  }
3fc2333933fdf1 Gerhard Engleder 2023-04-21  1575  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

             reply	other threads:[~2023-09-22 13:14 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-22 13:13 kernel test robot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-09-26  6:27 [PATCH next v4 2/5] minmax: Allow min()/max()/clamp() if the arguments have the same signedness kernel test robot
2023-09-20 20:42 kernel test robot
2023-09-19  2:28 kernel test robot
2023-09-18 22:51 kernel test robot
2023-09-18 22:00 kernel test robot
2023-09-18  8:14 [PATCH next v4 0/5] minmax: Relax type checks in min() and max() David Laight
2023-09-18  8:17 ` [PATCH next v4 2/5] minmax: Allow min()/max()/clamp() if the arguments have the same signedness David Laight

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=202309222002.aSjj9A5w-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=oe-kbuild@lists.linux.dev \
    /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.