From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [RFC PATCH 4/4] drivers/net/virtio_net: Added RSS hash report control.
Date: Tue, 02 Nov 2021 03:49:59 +0800 [thread overview]
Message-ID: <202111020307.31eQm7u3-lkp@intel.com> (raw)
In-Reply-To: <20211031045959.143001-5-andrew@daynix.com>
[-- Attachment #1: Type: text/plain, Size: 11642 bytes --]
Hi Andrew,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on mst-vhost/linux-next]
[also build test WARNING on net-next/master net/master v5.15 next-20211101]
[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]
url: https://github.com/0day-ci/linux/commits/Andrew-Melnychenko/Added-RSS-support/20211031-130048
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: x86_64-randconfig-s021-20211101 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/385fe5b07bf0ded4667d57d48eacf27e3d4e3733
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Andrew-Melnychenko/Added-RSS-support/20211031-130048
git checkout 385fe5b07bf0ded4667d57d48eacf27e3d4e3733
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/net/
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/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1185:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/virtio_net.c:1203:43: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected unsigned int [usertype] hash @@ got restricted __le32 [usertype] hash_value @@
drivers/net/virtio_net.c:1203:43: sparse: expected unsigned int [usertype] hash
drivers/net/virtio_net.c:1203:43: sparse: got restricted __le32 [usertype] hash_value
>> drivers/net/virtio_net.c:2262:45: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] hash_types @@ got unsigned int [usertype] rss_hash_types_supported @@
drivers/net/virtio_net.c:2262:45: sparse: expected restricted __le32 [usertype] hash_types
drivers/net/virtio_net.c:2262:45: sparse: got unsigned int [usertype] rss_hash_types_supported
>> drivers/net/virtio_net.c:2264:57: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le16 [usertype] indirection_table_mask @@ got int @@
drivers/net/virtio_net.c:2264:57: sparse: expected restricted __le16 [usertype] indirection_table_mask
drivers/net/virtio_net.c:2264:57: sparse: got int
>> drivers/net/virtio_net.c:2396:53: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] hash_types @@ got unsigned int [usertype] rss_hash_types_saved @@
drivers/net/virtio_net.c:2396:53: sparse: expected restricted __le32 [usertype] hash_types
drivers/net/virtio_net.c:2396:53: sparse: got unsigned int [usertype] rss_hash_types_saved
drivers/net/virtio_net.c:2992:61: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] hash_types @@ got unsigned int [usertype] rss_hash_types_saved @@
drivers/net/virtio_net.c:2992:61: sparse: expected restricted __le32 [usertype] hash_types
drivers/net/virtio_net.c:2992:61: sparse: got unsigned int [usertype] rss_hash_types_saved
vim +1185 drivers/net/virtio_net.c
23cde76d801246 Mark McLoughlin 2008-06-08 1145
7d9d60fd4ab696 Toshiaki Makita 2018-07-23 1146 static void receive_buf(struct virtnet_info *vi, struct receive_queue *rq,
2471c75efed325 Jesper Dangaard Brouer 2018-06-26 1147 void *buf, unsigned int len, void **ctx,
a0929a44c2065d Toshiaki Makita 2018-07-23 1148 unsigned int *xdp_xmit,
d46eeeaf99bcfa Jason Wang 2018-07-31 1149 struct virtnet_rq_stats *stats)
9ab86bbcf8be75 Shirley Ma 2010-01-29 1150 {
e9d7417b97f420 Jason Wang 2012-12-07 1151 struct net_device *dev = vi->dev;
9ab86bbcf8be75 Shirley Ma 2010-01-29 1152 struct sk_buff *skb;
012873d057a449 Michael S. Tsirkin 2014-10-24 1153 struct virtio_net_hdr_mrg_rxbuf *hdr;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1154 struct virtio_net_hdr_v1_hash *hdr_hash;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1155 enum pkt_hash_types rss_hash_type;
fb6813f480806d Rusty Russell 2008-07-25 1156
bcff3162f3e027 Michael S. Tsirkin 2014-10-24 1157 if (unlikely(len < vi->hdr_len + ETH_HLEN)) {
9ab86bbcf8be75 Shirley Ma 2010-01-29 1158 pr_debug("%s: short packet %i\n", dev->name, len);
9ab86bbcf8be75 Shirley Ma 2010-01-29 1159 dev->stats.rx_length_errors++;
ab7db91705e95e Michael Dalton 2014-01-16 1160 if (vi->mergeable_rx_bufs) {
680557cf79f826 Michael S. Tsirkin 2017-03-06 1161 put_page(virt_to_head_page(buf));
ab7db91705e95e Michael Dalton 2014-01-16 1162 } else if (vi->big_packets) {
98bfd23cdb30e6 Michael Dalton 2013-12-05 1163 give_pages(rq, buf);
ab7db91705e95e Michael Dalton 2014-01-16 1164 } else {
f6b10209b90d48 Jason Wang 2017-02-21 1165 put_page(virt_to_head_page(buf));
ab7db91705e95e Michael Dalton 2014-01-16 1166 }
7d9d60fd4ab696 Toshiaki Makita 2018-07-23 1167 return;
9ab86bbcf8be75 Shirley Ma 2010-01-29 1168 }
9ab86bbcf8be75 Shirley Ma 2010-01-29 1169
f121159d72091f Michael S. Tsirkin 2013-11-28 1170 if (vi->mergeable_rx_bufs)
7d9d60fd4ab696 Toshiaki Makita 2018-07-23 1171 skb = receive_mergeable(dev, vi, rq, buf, ctx, len, xdp_xmit,
a0929a44c2065d Toshiaki Makita 2018-07-23 1172 stats);
f121159d72091f Michael S. Tsirkin 2013-11-28 1173 else if (vi->big_packets)
a0929a44c2065d Toshiaki Makita 2018-07-23 1174 skb = receive_big(dev, vi, rq, buf, len, stats);
f121159d72091f Michael S. Tsirkin 2013-11-28 1175 else
a0929a44c2065d Toshiaki Makita 2018-07-23 1176 skb = receive_small(dev, vi, rq, buf, ctx, len, xdp_xmit, stats);
f121159d72091f Michael S. Tsirkin 2013-11-28 1177
8fc3b9e9a22977 Michael S. Tsirkin 2013-11-28 1178 if (unlikely(!skb))
7d9d60fd4ab696 Toshiaki Makita 2018-07-23 1179 return;
3f2c31d90327f2 Mark McLoughlin 2008-11-16 1180
9ab86bbcf8be75 Shirley Ma 2010-01-29 1181 hdr = skb_vnet_hdr(skb);
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1182 if (vi->has_rss_hash_report && (dev->features & NETIF_F_RXHASH)) {
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1183 hdr_hash = (struct virtio_net_hdr_v1_hash *)(hdr);
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1184
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 @1185 switch (hdr_hash->hash_report) {
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1186 case VIRTIO_NET_HASH_REPORT_TCPv4:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1187 case VIRTIO_NET_HASH_REPORT_UDPv4:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1188 case VIRTIO_NET_HASH_REPORT_TCPv6:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1189 case VIRTIO_NET_HASH_REPORT_UDPv6:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1190 case VIRTIO_NET_HASH_REPORT_TCPv6_EX:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1191 case VIRTIO_NET_HASH_REPORT_UDPv6_EX:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1192 rss_hash_type = PKT_HASH_TYPE_L4;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1193 break;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1194 case VIRTIO_NET_HASH_REPORT_IPv4:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1195 case VIRTIO_NET_HASH_REPORT_IPv6:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1196 case VIRTIO_NET_HASH_REPORT_IPv6_EX:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1197 rss_hash_type = PKT_HASH_TYPE_L3;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1198 break;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1199 case VIRTIO_NET_HASH_REPORT_NONE:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1200 default:
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1201 rss_hash_type = PKT_HASH_TYPE_NONE;
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1202 }
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 @1203 skb_set_hash(skb, hdr_hash->hash_value, rss_hash_type);
8bcc65dfaae785 Andrew Melnychenko 2021-10-31 1204 }
3fa2a1df909482 stephen hemminger 2011-06-15 1205
e858fae2b0b8f4 Mike Rapoport 2016-06-08 1206 if (hdr->hdr.flags & VIRTIO_NET_HDR_F_DATA_VALID)
10a8d94a95742b Jason Wang 2011-06-10 1207 skb->ip_summed = CHECKSUM_UNNECESSARY;
296f96fcfc160e Rusty Russell 2007-10-22 1208
e858fae2b0b8f4 Mike Rapoport 2016-06-08 1209 if (virtio_net_hdr_to_skb(skb, &hdr->hdr,
e858fae2b0b8f4 Mike Rapoport 2016-06-08 1210 virtio_is_little_endian(vi->vdev))) {
e858fae2b0b8f4 Mike Rapoport 2016-06-08 1211 net_warn_ratelimited("%s: bad gso: type: %u, size: %u\n",
e858fae2b0b8f4 Mike Rapoport 2016-06-08 1212 dev->name, hdr->hdr.gso_type,
fdd819b21576c3 Michael S. Tsirkin 2014-10-07 1213 hdr->hdr.gso_size);
296f96fcfc160e Rusty Russell 2007-10-22 1214 goto frame_err;
296f96fcfc160e Rusty Russell 2007-10-22 1215 }
296f96fcfc160e Rusty Russell 2007-10-22 1216
133bbb18ab1a2f Willem de Bruijn 2019-01-17 1217 skb_record_rx_queue(skb, vq2rxq(rq->vq));
d1dc06dcd0f8fc Mike Rapoport 2016-06-14 1218 skb->protocol = eth_type_trans(skb, dev);
d1dc06dcd0f8fc Mike Rapoport 2016-06-14 1219 pr_debug("Receiving skb proto 0x%04x len %i type %i\n",
d1dc06dcd0f8fc Mike Rapoport 2016-06-14 1220 ntohs(skb->protocol), skb->len, skb->pkt_type);
d1dc06dcd0f8fc Mike Rapoport 2016-06-14 1221
0fbd050a7d262b Eric Dumazet 2015-07-31 1222 napi_gro_receive(&rq->napi, skb);
7d9d60fd4ab696 Toshiaki Makita 2018-07-23 1223 return;
296f96fcfc160e Rusty Russell 2007-10-22 1224
296f96fcfc160e Rusty Russell 2007-10-22 1225 frame_err:
296f96fcfc160e Rusty Russell 2007-10-22 1226 dev->stats.rx_frame_errors++;
296f96fcfc160e Rusty Russell 2007-10-22 1227 dev_kfree_skb(skb);
296f96fcfc160e Rusty Russell 2007-10-22 1228 }
296f96fcfc160e Rusty Russell 2007-10-22 1229
---
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: 33622 bytes --]
prev parent reply other threads:[~2021-11-01 19:49 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-31 4:59 [RFC PATCH 0/4] Added RSS support Andrew Melnychenko
2021-10-31 4:59 ` Andrew Melnychenko
2021-10-31 4:59 ` [RFC PATCH 1/4] drivers/net/virtio_net: Fixed vheader to use v1 Andrew Melnychenko
2021-10-31 4:59 ` Andrew Melnychenko
2021-11-01 8:40 ` Michael S. Tsirkin
2021-11-01 8:40 ` Michael S. Tsirkin
2021-11-17 6:00 ` Andrew Melnichenko
2021-11-17 6:00 ` Andrew Melnichenko
2021-10-31 4:59 ` [RFC PATCH 2/4] drivers/net/virtio_net: Changed mergeable buffer length calculation Andrew Melnychenko
2021-10-31 4:59 ` Andrew Melnychenko
2021-10-31 16:11 ` kernel test robot
2021-11-01 8:44 ` Michael S. Tsirkin
2021-11-01 8:44 ` Michael S. Tsirkin
2021-11-17 6:00 ` Andrew Melnichenko
2021-11-17 6:00 ` Andrew Melnichenko
2021-10-31 4:59 ` [RFC PATCH 3/4] drivers/net/virtio_net: Added basic RSS support Andrew Melnychenko
2021-10-31 4:59 ` Andrew Melnychenko
2021-10-31 15:30 ` kernel test robot
2021-10-31 15:32 ` Willem de Bruijn
2021-10-31 15:32 ` Willem de Bruijn
2021-10-31 15:37 ` Willem de Bruijn
2021-10-31 15:37 ` Willem de Bruijn
2021-11-17 6:00 ` Andrew Melnichenko
2021-11-17 6:00 ` Andrew Melnichenko
2021-10-31 4:59 ` [RFC PATCH 4/4] drivers/net/virtio_net: Added RSS hash report control Andrew Melnychenko
2021-10-31 4:59 ` Andrew Melnychenko
2021-11-01 19:49 ` kernel test robot [this message]
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=202111020307.31eQm7u3-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/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.