[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202511110823.oBrdGTfa-lkp@intel.com>
Date: Tue, 11 Nov 2025 08:33:07 +0800
From: kernel test robot <lkp@...el.com>
To: Dmitry Skorodumov <skorodumov.dmitry@...wei.com>,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: oe-kbuild-all@...ts.linux.dev, andrey.bokhanko@...wei.com,
Dmitry Skorodumov <skorodumov.dmitry@...wei.com>,
Andrew Lunn <andrew+netdev@...n.ch>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>
Subject: Re: [PATCH net-next 07/14] ipvlan: Support IPv6 for learnable
l2-bridge
Hi Dmitry,
kernel test robot noticed the following build warnings:
[auto build test WARNING on net-next/main]
url: https://github.com/intel-lab-lkp/linux/commits/Dmitry-Skorodumov/ipvlan-Preparation-to-support-mac-nat/20251106-004449
base: net-next/main
patch link: https://lore.kernel.org/r/20251105161450.1730216-8-skorodumov.dmitry%40huawei.com
patch subject: [PATCH net-next 07/14] ipvlan: Support IPv6 for learnable l2-bridge
config: um-randconfig-r123-20251110 (https://download.01.org/0day-ci/archive/20251111/202511110823.oBrdGTfa-lkp@intel.com/config)
compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 93d445cba39f4dd3dcda4fa1433eca825cf8fc09)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251111/202511110823.oBrdGTfa-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202511110823.oBrdGTfa-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/net/ipvlan/ipvlan_core.c:56:36: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] a @@ got restricted __be32 const [usertype] s_addr @@
drivers/net/ipvlan/ipvlan_core.c:56:36: sparse: expected unsigned int [usertype] a
drivers/net/ipvlan/ipvlan_core.c:56:36: sparse: got restricted __be32 const [usertype] s_addr
>> drivers/net/ipvlan/ipvlan_core.c:794:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __be16 [usertype] payload_len @@
drivers/net/ipvlan/ipvlan_core.c:794:23: sparse: expected unsigned short [usertype] val
drivers/net/ipvlan/ipvlan_core.c:794:23: sparse: got restricted __be16 [usertype] payload_len
drivers/net/ipvlan/ipvlan_core.c:794:23: sparse: sparse: cast from restricted __be16
drivers/net/ipvlan/ipvlan_core.c:794:23: sparse: sparse: cast from restricted __be16
drivers/net/ipvlan/ipvlan_core.c:794:19: sparse: sparse: cast from restricted __be16
drivers/net/ipvlan/ipvlan_core.c:854:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __be16 [usertype] payload_len @@
drivers/net/ipvlan/ipvlan_core.c:854:23: sparse: expected unsigned short [usertype] val
drivers/net/ipvlan/ipvlan_core.c:854:23: sparse: got restricted __be16 [usertype] payload_len
drivers/net/ipvlan/ipvlan_core.c:854:23: sparse: sparse: cast from restricted __be16
drivers/net/ipvlan/ipvlan_core.c:854:23: sparse: sparse: cast from restricted __be16
drivers/net/ipvlan/ipvlan_core.c:854:19: sparse: sparse: cast from restricted __be16
vim +794 drivers/net/ipvlan/ipvlan_core.c
785
786 static u8 *ipvlan_search_icmp6_ll_addr(struct sk_buff *skb, u8 icmp_option)
787 {
788 /* skb is ensured to pullable for all ipv6 payload_len by caller */
789 struct ipv6hdr *ip6h = ipv6_hdr(skb);
790 struct icmp6hdr *icmph;
791 int ndsize, curr_off;
792
793 icmph = (struct icmp6hdr *)(ip6h + 1);
> 794 ndsize = (int)htons(ip6h->payload_len);
795 curr_off = sizeof(*icmph);
796
797 if (icmph->icmp6_type != NDISC_ROUTER_SOLICITATION)
798 curr_off += sizeof(struct in6_addr);
799
800 while ((curr_off + 2) < ndsize) {
801 u8 *data = (u8 *)icmph + curr_off;
802 u32 opt_len = data[1] << 3;
803
804 if (unlikely(opt_len == 0))
805 return NULL;
806
807 if (data[0] != icmp_option) {
808 curr_off += opt_len;
809 continue;
810 }
811
812 if (unlikely(opt_len < ETH_ALEN + 2))
813 return NULL;
814
815 if (unlikely(curr_off + opt_len > ndsize))
816 return NULL;
817
818 return data + 2;
819 }
820
821 return NULL;
822 }
823
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists