[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202510141423.IeIhJgQG-lkp@intel.com>
Date: Tue, 14 Oct 2025 14:32:52 +0800
From: kernel test robot <lkp@...el.com>
To: Daniel Jurgens <danielj@...dia.com>, netdev@...r.kernel.org,
mst@...hat.com, jasowang@...hat.com, alex.williamson@...hat.com,
pabeni@...hat.com
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
virtualization@...ts.linux.dev, parav@...dia.com,
shshitrit@...dia.com, yohadt@...dia.com, xuanzhuo@...ux.alibaba.com,
eperezma@...hat.com, shameerali.kolothum.thodi@...wei.com,
jgg@...pe.ca, kevin.tian@...el.com, kuba@...nel.org,
andrew+netdev@...n.ch, edumazet@...gle.com,
Daniel Jurgens <danielj@...dia.com>
Subject: Re: [PATCH net-next v4 05/12] virtio_net: Query and set flow filter
caps
Hi Daniel,
kernel test robot noticed the following build errors:
[auto build test ERROR on net-next/main]
url: https://github.com/intel-lab-lkp/linux/commits/Daniel-Jurgens/virtio_pci-Remove-supported_cap-size-build-assert/20251014-004146
base: net-next/main
patch link: https://lore.kernel.org/r/20251013152742.619423-6-danielj%40nvidia.com
patch subject: [PATCH net-next v4 05/12] virtio_net: Query and set flow filter caps
config: i386-buildonly-randconfig-003-20251014 (https://download.01.org/0day-ci/archive/20251014/202510141423.IeIhJgQG-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251014/202510141423.IeIhJgQG-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/202510141423.IeIhJgQG-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/net/virtio_net.c:6868:32: error: called object type 'unsigned int' is not a function or function pointer
6868 | if (sel->length > MAX_SEL_LEN()) {
| ~~~~~~~~~~~^
1 error generated.
vim +6868 drivers/net/virtio_net.c
6788
6789 static void virtnet_ff_init(struct virtnet_ff *ff, struct virtio_device *vdev)
6790 {
6791 size_t ff_mask_size = sizeof(struct virtio_net_ff_cap_mask_data) +
6792 sizeof(struct virtio_net_ff_selector) *
6793 VIRTIO_NET_FF_MASK_TYPE_MAX;
6794 struct virtio_admin_cmd_query_cap_id_result *cap_id_list;
6795 struct virtio_net_ff_selector *sel;
6796 int err;
6797 int i;
6798
6799 cap_id_list = kzalloc(sizeof(*cap_id_list), GFP_KERNEL);
6800 if (!cap_id_list)
6801 return;
6802
6803 err = virtio_admin_cap_id_list_query(vdev, cap_id_list);
6804 if (err)
6805 goto err_cap_list;
6806
6807 if (!(VIRTIO_CAP_IN_LIST(cap_id_list,
6808 VIRTIO_NET_FF_RESOURCE_CAP) &&
6809 VIRTIO_CAP_IN_LIST(cap_id_list,
6810 VIRTIO_NET_FF_SELECTOR_CAP) &&
6811 VIRTIO_CAP_IN_LIST(cap_id_list,
6812 VIRTIO_NET_FF_ACTION_CAP)))
6813 goto err_cap_list;
6814
6815 ff->ff_caps = kzalloc(sizeof(*ff->ff_caps), GFP_KERNEL);
6816 if (!ff->ff_caps)
6817 goto err_cap_list;
6818
6819 err = virtio_admin_cap_get(vdev,
6820 VIRTIO_NET_FF_RESOURCE_CAP,
6821 ff->ff_caps,
6822 sizeof(*ff->ff_caps));
6823
6824 if (err)
6825 goto err_ff;
6826
6827 /* VIRTIO_NET_FF_MASK_TYPE start at 1 */
6828 for (i = 1; i <= VIRTIO_NET_FF_MASK_TYPE_MAX; i++)
6829 ff_mask_size += get_mask_size(i);
6830
6831 ff->ff_mask = kzalloc(ff_mask_size, GFP_KERNEL);
6832 if (!ff->ff_mask)
6833 goto err_ff;
6834
6835 err = virtio_admin_cap_get(vdev,
6836 VIRTIO_NET_FF_SELECTOR_CAP,
6837 ff->ff_mask,
6838 ff_mask_size);
6839
6840 if (err)
6841 goto err_ff_mask;
6842
6843 ff->ff_actions = kzalloc(sizeof(*ff->ff_actions) +
6844 VIRTIO_NET_FF_ACTION_MAX,
6845 GFP_KERNEL);
6846 if (!ff->ff_actions)
6847 goto err_ff_mask;
6848
6849 err = virtio_admin_cap_get(vdev,
6850 VIRTIO_NET_FF_ACTION_CAP,
6851 ff->ff_actions,
6852 sizeof(*ff->ff_actions) + VIRTIO_NET_FF_ACTION_MAX);
6853
6854 if (err)
6855 goto err_ff_action;
6856
6857 err = virtio_admin_cap_set(vdev,
6858 VIRTIO_NET_FF_RESOURCE_CAP,
6859 ff->ff_caps,
6860 sizeof(*ff->ff_caps));
6861 if (err)
6862 goto err_ff_action;
6863
6864 ff_mask_size = sizeof(struct virtio_net_ff_cap_mask_data);
6865 sel = &ff->ff_mask->selectors[0];
6866
6867 for (i = 0; i < ff->ff_mask->count; i++) {
> 6868 if (sel->length > MAX_SEL_LEN()) {
6869 err = -EINVAL;
6870 goto err_ff_action;
6871 }
6872 ff_mask_size += sizeof(struct virtio_net_ff_selector) + sel->length;
6873 sel = (void *)sel + sizeof(*sel) + sel->length;
6874 }
6875
6876 err = virtio_admin_cap_set(vdev,
6877 VIRTIO_NET_FF_SELECTOR_CAP,
6878 ff->ff_mask,
6879 ff_mask_size);
6880 if (err)
6881 goto err_ff_action;
6882
6883 err = virtio_admin_cap_set(vdev,
6884 VIRTIO_NET_FF_ACTION_CAP,
6885 ff->ff_actions,
6886 sizeof(*ff->ff_actions) + VIRTIO_NET_FF_ACTION_MAX);
6887 if (err)
6888 goto err_ff_action;
6889
6890 ff->vdev = vdev;
6891 ff->ff_supported = true;
6892
6893 kfree(cap_id_list);
6894
6895 return;
6896
6897 err_ff_action:
6898 kfree(ff->ff_actions);
6899 err_ff_mask:
6900 kfree(ff->ff_mask);
6901 err_ff:
6902 kfree(ff->ff_caps);
6903 err_cap_list:
6904 kfree(cap_id_list);
6905 }
6906
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists