Subject: Re: [PATCH net-next v2 1/3] sfc: allow more flexible way of adding filters for PTP

From: kernel test robot <[email-masked]>
Date: Sat, 20 Aug 2022 03:38:16 +0800

Hi "Íñigo,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on net-next/master]

url:    https://github.com/intel-lab-lkp/linux/commits/igo-Huguet/sfc-allow-more-flexible-way-of-adding-filters-for-PTP/20220819-172020
base:   https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 268603d79cc48dba671e9caf108fab32315b86a2
config: riscv-randconfig-s032-20220820 (https://download.01.org/0day-ci/archive/20220820/[email-masked]/config)
compiler: riscv32-linux-gcc (GCC) 12.1.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        # https://github.com/intel-lab-lkp/linux/commit/b2ecd6ff1d511bc31dbb222211226ce141b0852b
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review igo-Huguet/sfc-allow-more-flexible-way-of-adding-filters-for-PTP/20220819-172020
        git checkout b2ecd6ff1d511bc31dbb222211226ce141b0852b
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=riscv SHELL=/bin/bash drivers/net/ethernet/sfc/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <[email-masked]>

sparse warnings: (new ones prefixed by >>)
   WARNING: invalid argument to '-march': '_zihintpause'
>> drivers/net/ethernet/sfc/ptp.c:1636:39: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned short [usertype] val @@     got restricted __be16 [usertype] @@
   drivers/net/ethernet/sfc/ptp.c:1636:39: sparse:     expected unsigned short [usertype] val
   drivers/net/ethernet/sfc/ptp.c:1636:39: sparse:     got restricted __be16 [usertype]
   drivers/net/ethernet/sfc/ptp.c:1636:39: sparse: sparse: cast from restricted __be16
   drivers/net/ethernet/sfc/ptp.c:1636:39: sparse: sparse: cast from restricted __be16
   drivers/net/ethernet/sfc/ptp.c:1697:58: sparse: sparse: restricted __be16 degrades to integer
   drivers/net/ethernet/sfc/ptp.c:1736:36: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned short [usertype] val @@     got restricted __be16 [usertype] @@
   drivers/net/ethernet/sfc/ptp.c:1736:36: sparse:     expected unsigned short [usertype] val
   drivers/net/ethernet/sfc/ptp.c:1736:36: sparse:     got restricted __be16 [usertype]
   drivers/net/ethernet/sfc/ptp.c:1736:36: sparse: sparse: cast from restricted __be16
   drivers/net/ethernet/sfc/ptp.c:1736:36: sparse: sparse: cast from restricted __be16

vim +1636 drivers/net/ethernet/sfc/ptp.c

7c236c43b83822 Stuart Hodgson 2012-09-03  1620  
7c236c43b83822 Stuart Hodgson 2012-09-03  1621  /* Determine whether this packet should be processed by the PTP module
7c236c43b83822 Stuart Hodgson 2012-09-03  1622   * or transmitted conventionally.
7c236c43b83822 Stuart Hodgson 2012-09-03  1623   */
7c236c43b83822 Stuart Hodgson 2012-09-03  1624  bool efx_ptp_is_ptp_tx(struct efx_nic *efx, struct sk_buff *skb)
7c236c43b83822 Stuart Hodgson 2012-09-03  1625  {
7c236c43b83822 Stuart Hodgson 2012-09-03  1626  	return efx->ptp_data &&
7c236c43b83822 Stuart Hodgson 2012-09-03  1627  		efx->ptp_data->enabled &&
7c236c43b83822 Stuart Hodgson 2012-09-03  1628  		skb->len >= PTP_MIN_LENGTH &&
7c236c43b83822 Stuart Hodgson 2012-09-03  1629  		skb->len <= MC_CMD_PTP_IN_TRANSMIT_PACKET_MAXNUM &&
7c236c43b83822 Stuart Hodgson 2012-09-03  1630  		likely(skb->protocol == htons(ETH_P_IP)) &&
e5a498e943fbc4 Ben Hutchings  2013-12-06  1631  		skb_transport_header_was_set(skb) &&
e5a498e943fbc4 Ben Hutchings  2013-12-06  1632  		skb_network_header_len(skb) >= sizeof(struct iphdr) &&
7c236c43b83822 Stuart Hodgson 2012-09-03  1633  		ip_hdr(skb)->protocol == IPPROTO_UDP &&
e5a498e943fbc4 Ben Hutchings  2013-12-06  1634  		skb_headlen(skb) >=
e5a498e943fbc4 Ben Hutchings  2013-12-06  1635  		skb_transport_offset(skb) + sizeof(struct udphdr) &&
7c236c43b83822 Stuart Hodgson 2012-09-03 @1636  		udp_hdr(skb)->dest == htons(PTP_EVENT_PORT);
7c236c43b83822 Stuart Hodgson 2012-09-03  1637  }
7c236c43b83822 Stuart Hodgson 2012-09-03  1638  

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