From: kernel test robot <lkp@intel.com>
To: Heng Qi <hengqi@linux.alibaba.com>,
netdev@vger.kernel.org, virtualization@lists.linux.dev
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
"Jason Wang" <jasowang@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Xuan Zhuo" <xuanzhuo@linux.alibaba.com>,
"Eugenio Pérez" <eperezma@redhat.com>,
"Eric Dumazet" <edumazet@google.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>
Subject: Re: [PATCH net-next v3 4/4] virtio_net: improve dim command request efficiency
Date: Thu, 6 Jun 2024 18:25:04 +0800 [thread overview]
Message-ID: <202406061803.R48FH9c8-lkp@intel.com> (raw)
In-Reply-To: <20240606061446.127802-5-hengqi@linux.alibaba.com>
Hi Heng,
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/Heng-Qi/virtio_net-passing-control_buf-explicitly/20240606-141748
base: net-next/main
patch link: https://lore.kernel.org/r/20240606061446.127802-5-hengqi%40linux.alibaba.com
patch subject: [PATCH net-next v3 4/4] virtio_net: improve dim command request efficiency
config: riscv-defconfig (https://download.01.org/0day-ci/archive/20240606/202406061803.R48FH9c8-lkp@intel.com/config)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project d7d2d4f53fc79b4b58e8d8d08151b577c3699d4a)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240606/202406061803.R48FH9c8-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/202406061803.R48FH9c8-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/net/virtio_net.c:7:
In file included from include/linux/netdevice.h:38:
In file included from include/net/net_namespace.h:43:
In file included from include/linux/skbuff.h:17:
In file included from include/linux/bvec.h:10:
In file included from include/linux/highmem.h:8:
In file included from include/linux/cacheflush.h:5:
In file included from arch/riscv/include/asm/cacheflush.h:9:
In file included from include/linux/mm.h:2253:
include/linux/vmstat.h:514:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
514 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
>> drivers/net/virtio_net.c:2844:3: warning: add explicit braces to avoid dangling else [-Wdangling-else]
2844 | else
| ^
2 warnings generated.
vim +2844 drivers/net/virtio_net.c
2813
2814 static void virtnet_get_cvq_work(struct work_struct *work)
2815 {
2816 struct virtnet_info *vi =
2817 container_of(work, struct virtnet_info, get_cvq);
2818 struct virtnet_coal_node *wait_coal;
2819 bool valid = false;
2820 unsigned int tmp;
2821 void *res;
2822
2823 mutex_lock(&vi->cvq_lock);
2824 while ((res = virtqueue_get_buf(vi->cvq, &tmp)) != NULL) {
2825 complete((struct completion *)res);
2826 valid = true;
2827 }
2828 mutex_unlock(&vi->cvq_lock);
2829
2830 if (!valid)
2831 return;
2832
2833 while (true) {
2834 wait_coal = NULL;
2835 mutex_lock(&vi->coal_wait_lock);
2836 if (!list_empty(&vi->coal_wait_list))
2837 wait_coal = list_first_entry(&vi->coal_wait_list,
2838 struct virtnet_coal_node,
2839 list);
2840 mutex_unlock(&vi->coal_wait_lock);
2841 if (wait_coal)
2842 if (virtnet_add_dim_command(vi, wait_coal))
2843 break;
> 2844 else
2845 break;
2846 }
2847 }
2848 static int virtnet_set_mac_address(struct net_device *dev, void *p)
2849 {
2850 struct virtnet_info *vi = netdev_priv(dev);
2851 struct virtio_device *vdev = vi->vdev;
2852 int ret;
2853 struct sockaddr *addr;
2854 struct scatterlist sg;
2855
2856 if (virtio_has_feature(vi->vdev, VIRTIO_NET_F_STANDBY))
2857 return -EOPNOTSUPP;
2858
2859 addr = kmemdup(p, sizeof(*addr), GFP_KERNEL);
2860 if (!addr)
2861 return -ENOMEM;
2862
2863 ret = eth_prepare_mac_addr_change(dev, addr);
2864 if (ret)
2865 goto out;
2866
2867 if (virtio_has_feature(vdev, VIRTIO_NET_F_CTRL_MAC_ADDR)) {
2868 sg_init_one(&sg, addr->sa_data, dev->addr_len);
2869 if (!virtnet_send_command(vi, VIRTIO_NET_CTRL_MAC,
2870 VIRTIO_NET_CTRL_MAC_ADDR_SET, &sg)) {
2871 dev_warn(&vdev->dev,
2872 "Failed to set mac address by vq command.\n");
2873 ret = -EINVAL;
2874 goto out;
2875 }
2876 } else if (virtio_has_feature(vdev, VIRTIO_NET_F_MAC) &&
2877 !virtio_has_feature(vdev, VIRTIO_F_VERSION_1)) {
2878 unsigned int i;
2879
2880 /* Naturally, this has an atomicity problem. */
2881 for (i = 0; i < dev->addr_len; i++)
2882 virtio_cwrite8(vdev,
2883 offsetof(struct virtio_net_config, mac) +
2884 i, addr->sa_data[i]);
2885 }
2886
2887 eth_commit_mac_addr_change(dev, p);
2888 ret = 0;
2889
2890 out:
2891 kfree(addr);
2892 return ret;
2893 }
2894
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-06-06 10:26 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-06 6:14 [PATCH net-next v3 0/4] virtio_net: enable the irq for ctrlq Heng Qi
2024-06-06 6:14 ` [PATCH net-next v3 1/4] virtio_net: passing control_buf explicitly Heng Qi
2024-06-06 6:14 ` [PATCH net-next v3 2/4] virtio_net: enable irq for the control vq Heng Qi
2024-06-06 6:14 ` [PATCH net-next v3 3/4] virtio_net: change the command token to completion Heng Qi
2024-06-06 6:14 ` [PATCH net-next v3 4/4] virtio_net: improve dim command request efficiency Heng Qi
2024-06-06 10:25 ` kernel test robot [this message]
2024-06-06 20:34 ` kernel test robot
2024-06-17 4:05 ` Jason Wang
2024-06-17 7:27 ` Heng Qi
2024-06-18 1:29 ` Jason Wang
2024-06-18 14:24 ` Heng Qi
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=202406061803.R48FH9c8-lkp@intel.com \
--to=lkp@intel.com \
--cc=edumazet@google.com \
--cc=eperezma@redhat.com \
--cc=hengqi@linux.alibaba.com \
--cc=jasowang@redhat.com \
--cc=kuba@kernel.org \
--cc=llvm@lists.linux.dev \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=pabeni@redhat.com \
--cc=virtualization@lists.linux.dev \
--cc=xuanzhuo@linux.alibaba.com \
/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.