From: kernel test robot <lkp@intel.com>
To: Lorenzo Bianconi <lorenzo@kernel.org>,
Donald Hunter <donald.hunter@gmail.com>,
Jakub Kicinski <kuba@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>, Simon Horman <horms@kernel.org>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Jesper Dangaard Brouer <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
Stanislav Fomichev <sdf@fomichev.me>,
Andrew Lunn <andrew+netdev@lunn.ch>,
Tony Nguyen <anthony.l.nguyen@intel.com>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
Alexander Lobakin <aleksander.lobakin@intel.com>,
Andrii Nakryiko <andrii@kernel.org>,
Martin KaFai Lau <martin.lau@linux.dev>,
Eduard Zingerman <eddyz87@gmail.com>, Song Liu <song@kernel.org>,
Yonghong Song <yonghong.song@linux.dev>,
KP Singh <kpsingh@kernel.org>, Hao Luo <haoluo@google.com>,
Jiri Olsa <jolsa@kernel.org>,
Shuah Khan <skhan@linuxfoundation.org>,
Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Cc: oe-kbuild-all@lists.linux.dev, netdev@vger.kernel.org,
Jakub Sitnicki <jakub@cloudflare.com>,
bpf@vger.kernel.org, intel-wired-lan@lists.osuosl.org,
linux-kselftest@vger.kernel.org
Subject: Re: [Intel-wired-lan] [PATCH bpf-next 3/5] net: ice: Add xmo_rx_checksum callback
Date: Wed, 11 Feb 2026 14:07:10 +0800 [thread overview]
Message-ID: <202602111429.7z0nNd0Q-lkp@intel.com> (raw)
In-Reply-To: <20260210-bpf-xdp-meta-rxcksum-v1-3-e5d55caa0541@kernel.org>
Hi Lorenzo,
kernel test robot noticed the following build warnings:
[auto build test WARNING on db975debcb8c4cd367a78811bc1ba84c83f854bd]
url: https://github.com/intel-lab-lkp/linux/commits/Lorenzo-Bianconi/netlink-specs-Add-XDP-RX-checksum-capability-to-XDP-metadata-specs/20260211-012550
base: db975debcb8c4cd367a78811bc1ba84c83f854bd
patch link: https://lore.kernel.org/r/20260210-bpf-xdp-meta-rxcksum-v1-3-e5d55caa0541%40kernel.org
patch subject: [Intel-wired-lan] [PATCH bpf-next 3/5] net: ice: Add xmo_rx_checksum callback
config: i386-randconfig-063-20260211 (https://download.01.org/0day-ci/archive/20260211/202602111429.7z0nNd0Q-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260211/202602111429.7z0nNd0Q-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/oe-kbuild-all/202602111429.7z0nNd0Q-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/intel/ice/ice_txrx_lib.c:109:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __wsum @@
drivers/net/ethernet/intel/ice/ice_txrx_lib.c:109:29: sparse: expected unsigned int [usertype]
drivers/net/ethernet/intel/ice/ice_txrx_lib.c:109:29: sparse: got restricted __wsum
>> drivers/net/ethernet/intel/ice/ice_txrx_lib.c:181:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int [addressable] [usertype] cksum_meta @@
drivers/net/ethernet/intel/ice/ice_txrx_lib.c:181:27: sparse: expected restricted __wsum [usertype] csum
drivers/net/ethernet/intel/ice/ice_txrx_lib.c:181:27: sparse: got unsigned int [addressable] [usertype] cksum_meta
drivers/net/ethernet/intel/ice/ice_txrx_lib.c:515:9: sparse: sparse: context imbalance in 'ice_finalize_xdp_rx' - different lock contexts for basic block
vim +109 drivers/net/ethernet/intel/ice/ice_txrx_lib.c
83
84 static void
85 ice_get_rx_csum(const union ice_32b_rx_flex_desc *rx_desc, u16 ptype,
86 struct ice_rx_ring *ring, enum xdp_checksum *ip_summed,
87 u32 *cksum_meta)
88 {
89 struct libeth_rx_pt decoded = libie_rx_pt_parse(ptype);
90 u16 rx_status0, rx_status1;
91 bool ipv4, ipv6;
92
93 if (!libeth_rx_pt_has_checksum(ring->netdev, decoded))
94 goto checksum_none;
95
96 rx_status0 = le16_to_cpu(rx_desc->wb.status_error0);
97 rx_status1 = le16_to_cpu(rx_desc->wb.status_error1);
98 if ((ring->flags & ICE_RX_FLAGS_RING_GCS) &&
99 rx_desc->wb.rxdid == ICE_RXDID_FLEX_NIC &&
100 (decoded.inner_prot == LIBETH_RX_PT_INNER_TCP ||
101 decoded.inner_prot == LIBETH_RX_PT_INNER_UDP ||
102 decoded.inner_prot == LIBETH_RX_PT_INNER_ICMP)) {
103 const struct ice_32b_rx_flex_desc_nic *desc;
104 u16 csum;
105
106 desc = (struct ice_32b_rx_flex_desc_nic *)rx_desc;
107 *ip_summed = XDP_CHECKSUM_COMPLETE;
108 csum = (__force u16)desc->raw_csum;
> 109 *cksum_meta = csum_unfold((__force __sum16)swab16(csum));
110 return;
111 }
112
113 /* check if HW has decoded the packet and checksum */
114 if (!(rx_status0 & BIT(ICE_RX_FLEX_DESC_STATUS0_L3L4P_S)))
115 goto checksum_none;
116
117 ipv4 = libeth_rx_pt_get_ip_ver(decoded) == LIBETH_RX_PT_OUTER_IPV4;
118 ipv6 = libeth_rx_pt_get_ip_ver(decoded) == LIBETH_RX_PT_OUTER_IPV6;
119
120 if (ipv4 && (rx_status0 & (BIT(ICE_RX_FLEX_DESC_STATUS0_XSUM_EIPE_S)))) {
121 ring->vsi->back->hw_rx_eipe_error++;
122 goto checksum_none;
123 }
124
125 if (ipv4 && (rx_status0 & (BIT(ICE_RX_FLEX_DESC_STATUS0_XSUM_IPE_S))))
126 goto checksum_fail;
127
128 if (ipv6 && (rx_status0 & (BIT(ICE_RX_FLEX_DESC_STATUS0_IPV6EXADD_S))))
129 goto checksum_fail;
130
131 /* check for L4 errors and handle packets that were not able to be
132 * checksummed due to arrival speed
133 */
134 if (rx_status0 & BIT(ICE_RX_FLEX_DESC_STATUS0_XSUM_L4E_S))
135 goto checksum_fail;
136
137 /* check for outer UDP checksum error in tunneled packets */
138 if ((rx_status1 & BIT(ICE_RX_FLEX_DESC_STATUS1_NAT_S)) &&
139 (rx_status0 & BIT(ICE_RX_FLEX_DESC_STATUS0_XSUM_EUDPE_S)))
140 goto checksum_fail;
141
142 /* If there is an outer header present that might contain a checksum
143 * we need to bump the checksum level by 1 to reflect the fact that
144 * we are indicating we validated the inner checksum.
145 */
146 if (decoded.tunnel_type >= LIBETH_RX_PT_TUNNEL_IP_GRENAT)
147 *cksum_meta = 1;
148
149 *ip_summed = XDP_CHECKSUM_UNNECESSARY;
150 return;
151
152 checksum_fail:
153 ring->vsi->back->hw_csum_rx_error++;
154 checksum_none:
155 *ip_summed = XDP_CHECKSUM_NONE;
156 *cksum_meta = 0;
157 }
158
159 /**
160 * ice_rx_csum - Indicate in skb if checksum is good
161 * @ring: the ring we care about
162 * @skb: skb currently being received and modified
163 * @rx_desc: the receive descriptor
164 * @ptype: the packet type decoded by hardware
165 *
166 * skb->protocol must be set before this function is called
167 */
168 static void
169 ice_rx_csum(struct ice_rx_ring *ring, struct sk_buff *skb,
170 union ice_32b_rx_flex_desc *rx_desc, u16 ptype)
171 {
172 enum xdp_checksum ip_summed;
173 u32 cksum_meta;
174
175 ice_get_rx_csum(rx_desc, ptype, ring, &ip_summed, &cksum_meta);
176 switch (ip_summed) {
177 case XDP_CHECKSUM_UNNECESSARY:
178 skb->csum_level = cksum_meta;
179 break;
180 case XDP_CHECKSUM_COMPLETE:
> 181 skb->csum = cksum_meta;
182 break;
183 default:
184 break;
185 }
186 skb->ip_summed = ip_summed;
187 }
188
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-02-11 6:07 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-10 17:21 [PATCH bpf-next 0/5] Add the the capability to load HW RX checsum in eBPF programs Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:21 ` [PATCH bpf-next 1/5] netlink: specs: Add XDP RX checksum capability to XDP metadata specs Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:54 ` bot+bpf-ci
2026-02-10 17:54 ` [Intel-wired-lan] " bot+bpf-ci
2026-02-13 5:18 ` Stanislav Fomichev
2026-02-13 5:18 ` [Intel-wired-lan] " Stanislav Fomichev
2026-02-13 10:40 ` Lorenzo Bianconi
2026-02-13 10:40 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:21 ` [PATCH bpf-next 2/5] net: veth: Add xmo_rx_checksum callback to veth driver Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:54 ` bot+bpf-ci
2026-02-10 17:54 ` [Intel-wired-lan] " bot+bpf-ci
2026-02-11 8:04 ` Loktionov, Aleksandr
2026-02-11 8:04 ` Loktionov, Aleksandr
2026-02-13 15:22 ` Lorenzo Bianconi
2026-02-10 17:21 ` [PATCH bpf-next 3/5] net: ice: Add xmo_rx_checksum callback Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:54 ` bot+bpf-ci
2026-02-10 17:54 ` [Intel-wired-lan] " bot+bpf-ci
2026-02-11 6:07 ` kernel test robot [this message]
2026-02-10 17:21 ` [PATCH bpf-next 4/5] selftests/bpf: Add selftest support for bpf_xdp_metadata_rx_checksum Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:55 ` bot+bpf-ci
2026-02-10 17:55 ` [Intel-wired-lan] " bot+bpf-ci
2026-02-11 8:05 ` Loktionov, Aleksandr
2026-02-11 8:05 ` Loktionov, Aleksandr
2026-02-10 17:21 ` [PATCH bpf-next 5/5] selftests/bpf: Add bpf_xdp_metadata_rx_checksum support to xdp_hw_metadat prog Lorenzo Bianconi
2026-02-10 17:21 ` [Intel-wired-lan] " Lorenzo Bianconi
2026-02-10 17:54 ` bot+bpf-ci
2026-02-10 17:54 ` [Intel-wired-lan] " bot+bpf-ci
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=202602111429.7z0nNd0Q-lkp@intel.com \
--to=lkp@intel.com \
--cc=aleksander.lobakin@intel.com \
--cc=andrew+netdev@lunn.ch \
--cc=andrii@kernel.org \
--cc=anthony.l.nguyen@intel.com \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=donald.hunter@gmail.com \
--cc=eddyz87@gmail.com \
--cc=edumazet@google.com \
--cc=haoluo@google.com \
--cc=hawk@kernel.org \
--cc=horms@kernel.org \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jakub@cloudflare.com \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=lorenzo@kernel.org \
--cc=maciej.fijalkowski@intel.com \
--cc=martin.lau@linux.dev \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=pabeni@redhat.com \
--cc=przemyslaw.kitszel@intel.com \
--cc=sdf@fomichev.me \
--cc=skhan@linuxfoundation.org \
--cc=song@kernel.org \
--cc=yonghong.song@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.