Thread (8 messages) 8 messages, 3 authors, 2022-03-04

Re: [PATCH v4 3/4] drivers/net/virtio_net: Added RSS hash report.

From: Andrew Melnichenko <hidden>
Date: 2022-03-04 13:16:50
Also in: lkml, oe-kbuild-all, virtualization

Hi all,
Yes, I'll prepare a new commit later.

On Fri, Mar 4, 2022 at 10:08 AM Michael S. Tsirkin [off-list ref] wrote:
On Wed, Feb 23, 2022 at 03:15:28AM +0800, kernel test robot wrote:
quoted
Hi Andrew,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on mst-vhost/linux-next]
[also build test WARNING on net/master horms-ipvs/master net-next/master linus/master v5.17-rc5 next-20220217]
[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]

Andrew,
do you plan to fix this?
quoted
url:    https://github.com/0day-ci/linux/commits/Andrew-Melnychenko/RSS-support-for-VirtioNet/20220222-200334
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: i386-randconfig-s002-20220221 (https://download.01.org/0day-ci/archive/20220223/202202230342.HPYe6dHA-lkp@intel.com/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/4fda71c17afd24d8afb675baa0bb14dbbc6cd23c
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Andrew-Melnychenko/RSS-support-for-VirtioNet/20220222-200334
        git checkout 4fda71c17afd24d8afb675baa0bb14dbbc6cd23c
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=i386 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <redacted>


sparse warnings: (new ones prefixed by >>)
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
   drivers/net/virtio_net.c:1160:25: sparse: sparse: restricted __le16 degrades to integer
quoted
quoted
drivers/net/virtio_net.c:1178:35: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected unsigned int [usertype] hash @@     got restricted __le32 const [usertype] hash_value @@
   drivers/net/virtio_net.c:1178:35: sparse:     expected unsigned int [usertype] hash
   drivers/net/virtio_net.c:1178:35: sparse:     got restricted __le32 const [usertype] hash_value

vim +1178 drivers/net/virtio_net.c

  1151
  1152        static void virtio_skb_set_hash(const struct virtio_net_hdr_v1_hash *hdr_hash,
  1153                                        struct sk_buff *skb)
  1154        {
  1155                enum pkt_hash_types rss_hash_type;
  1156
  1157                if (!hdr_hash || !skb)
  1158                        return;
  1159
  1160                switch (hdr_hash->hash_report) {
  1161                case VIRTIO_NET_HASH_REPORT_TCPv4:
  1162                case VIRTIO_NET_HASH_REPORT_UDPv4:
  1163                case VIRTIO_NET_HASH_REPORT_TCPv6:
  1164                case VIRTIO_NET_HASH_REPORT_UDPv6:
  1165                case VIRTIO_NET_HASH_REPORT_TCPv6_EX:
  1166                case VIRTIO_NET_HASH_REPORT_UDPv6_EX:
  1167                        rss_hash_type = PKT_HASH_TYPE_L4;
  1168                        break;
  1169                case VIRTIO_NET_HASH_REPORT_IPv4:
  1170                case VIRTIO_NET_HASH_REPORT_IPv6:
  1171                case VIRTIO_NET_HASH_REPORT_IPv6_EX:
  1172                        rss_hash_type = PKT_HASH_TYPE_L3;
  1173                        break;
  1174                case VIRTIO_NET_HASH_REPORT_NONE:
  1175                default:
  1176                        rss_hash_type = PKT_HASH_TYPE_NONE;
  1177                }
quoted
1178                skb_set_hash(skb, hdr_hash->hash_value, rss_hash_type);
  1179        }
  1180

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help