Re: [PATCH v1] vdpa/mlx5: Add support for running with virtio_vdpa

From: kernel test robot
Date: Mon May 31 2021 - 16:16:50 EST


Hi Eli,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on v5.13-rc3]
[cannot apply to linus/master v5.13-rc4 next-20210528]
[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/Eli-Cohen/vdpa-mlx5-Add-support-for-running-with-virtio_vdpa/20210601-010404
base: c4681547bcce777daf576925a966ffa824edd09d
config: arc-allyesconfig (attached as .config)
compiler: arceb-elf-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/6f3930e43ca375bc3d3325f02350db3226b891cf
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Eli-Cohen/vdpa-mlx5-Add-support-for-running-with-virtio_vdpa/20210601-010404
git checkout 6f3930e43ca375bc3d3325f02350db3226b891cf
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc

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

All errors (new ones prefixed by >>):

In file included from include/linux/byteorder/big_endian.h:5,
from arch/arc/include/uapi/asm/byteorder.h:14,
from include/asm-generic/bitops/le.h:7,
from arch/arc/include/asm/bitops.h:373,
from include/linux/bitops.h:32,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:4:
drivers/vdpa/mlx5/net/mlx5_vnet.c: In function 'mlx5_vdpa_set_status':
>> include/linux/compiler_types.h:140:35: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
140 | #define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
| ^~~~~~~~~~~~~~~~~~
include/uapi/linux/byteorder/big_endian.h:40:51: note: in definition of macro '__be32_to_cpu'
40 | #define __be32_to_cpu(x) ((__force __u32)(__be32)(x))
| ^
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
17 | #define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:51:35: note: in expansion of macro 'offsetof'
51 | #define __mlx5_bit_off(typ, fld) (offsetof(struct mlx5_ifc_##typ##_bits, fld))
| ^~~~~~~~
include/linux/mlx5/device.h:53:34: note: in expansion of macro '__mlx5_bit_off'
53 | #define __mlx5_dw_off(typ, fld) (__mlx5_bit_off(typ, fld) / 32)
| ^~~~~~~~~~~~~~
include/linux/mlx5/device.h:96:1: note: in expansion of macro '__mlx5_dw_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:1788:7: note: in expansion of macro 'MLX5_CAP_GEN'
1788 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from include/linux/mlx5/driver.h:53,
from include/linux/mlx5/cq.h:36,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:11:
>> include/linux/mlx5/device.h:50:57: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
50 | #define __mlx5_bit_sz(typ, fld) sizeof(__mlx5_nullp(typ)->fld)
| ^~
include/linux/mlx5/device.h:56:43: note: in expansion of macro '__mlx5_bit_sz'
56 | #define __mlx5_dw_bit_off(typ, fld) (32 - __mlx5_bit_sz(typ, fld) - (__mlx5_bit_off(typ, fld) & 0x1f))
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:96:30: note: in expansion of macro '__mlx5_dw_bit_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:1788:7: note: in expansion of macro 'MLX5_CAP_GEN'
1788 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from <command-line>:
>> include/linux/compiler_types.h:140:35: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
140 | #define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
| ^~~~~~~~~~~~~~~~~~
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
17 | #define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:51:35: note: in expansion of macro 'offsetof'
51 | #define __mlx5_bit_off(typ, fld) (offsetof(struct mlx5_ifc_##typ##_bits, fld))
| ^~~~~~~~
include/linux/mlx5/device.h:56:70: note: in expansion of macro '__mlx5_bit_off'
56 | #define __mlx5_dw_bit_off(typ, fld) (32 - __mlx5_bit_sz(typ, fld) - (__mlx5_bit_off(typ, fld) & 0x1f))
| ^~~~~~~~~~~~~~
include/linux/mlx5/device.h:96:30: note: in expansion of macro '__mlx5_dw_bit_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:1788:7: note: in expansion of macro 'MLX5_CAP_GEN'
1788 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from include/linux/mlx5/driver.h:53,
from include/linux/mlx5/cq.h:36,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:11:
>> include/linux/mlx5/device.h:50:57: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
50 | #define __mlx5_bit_sz(typ, fld) sizeof(__mlx5_nullp(typ)->fld)
| ^~
include/linux/mlx5/device.h:57:47: note: in expansion of macro '__mlx5_bit_sz'
57 | #define __mlx5_mask(typ, fld) ((u32)((1ull << __mlx5_bit_sz(typ, fld)) - 1))
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:97:1: note: in expansion of macro '__mlx5_mask'
97 | __mlx5_mask(typ, fld))
| ^~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:1788:7: note: in expansion of macro 'MLX5_CAP_GEN'
1788 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from include/linux/byteorder/big_endian.h:5,
from arch/arc/include/uapi/asm/byteorder.h:14,
from include/asm-generic/bitops/le.h:7,
from arch/arc/include/asm/bitops.h:373,
from include/linux/bitops.h:32,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:4:
drivers/vdpa/mlx5/net/mlx5_vnet.c: In function 'mlx5_vdpa_dev_add':
>> include/linux/compiler_types.h:140:35: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
140 | #define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
| ^~~~~~~~~~~~~~~~~~
include/uapi/linux/byteorder/big_endian.h:40:51: note: in definition of macro '__be32_to_cpu'
40 | #define __be32_to_cpu(x) ((__force __u32)(__be32)(x))
| ^
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
17 | #define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:51:35: note: in expansion of macro 'offsetof'
51 | #define __mlx5_bit_off(typ, fld) (offsetof(struct mlx5_ifc_##typ##_bits, fld))
| ^~~~~~~~
include/linux/mlx5/device.h:53:34: note: in expansion of macro '__mlx5_bit_off'
53 | #define __mlx5_dw_off(typ, fld) (__mlx5_bit_off(typ, fld) / 32)
| ^~~~~~~~~~~~~~
include/linux/mlx5/device.h:96:1: note: in expansion of macro '__mlx5_dw_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:2036:6: note: in expansion of macro 'MLX5_CAP_GEN'
2036 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from include/linux/mlx5/driver.h:53,
from include/linux/mlx5/cq.h:36,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:11:
>> include/linux/mlx5/device.h:50:57: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
50 | #define __mlx5_bit_sz(typ, fld) sizeof(__mlx5_nullp(typ)->fld)
| ^~
include/linux/mlx5/device.h:56:43: note: in expansion of macro '__mlx5_bit_sz'
56 | #define __mlx5_dw_bit_off(typ, fld) (32 - __mlx5_bit_sz(typ, fld) - (__mlx5_bit_off(typ, fld) & 0x1f))
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:96:30: note: in expansion of macro '__mlx5_dw_bit_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:2036:6: note: in expansion of macro 'MLX5_CAP_GEN'
2036 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from <command-line>:
>> include/linux/compiler_types.h:140:35: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
140 | #define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
| ^~~~~~~~~~~~~~~~~~
include/linux/stddef.h:17:32: note: in expansion of macro '__compiler_offsetof'
17 | #define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
| ^~~~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:51:35: note: in expansion of macro 'offsetof'
51 | #define __mlx5_bit_off(typ, fld) (offsetof(struct mlx5_ifc_##typ##_bits, fld))
| ^~~~~~~~
include/linux/mlx5/device.h:56:70: note: in expansion of macro '__mlx5_bit_off'
56 | #define __mlx5_dw_bit_off(typ, fld) (32 - __mlx5_bit_sz(typ, fld) - (__mlx5_bit_off(typ, fld) & 0x1f))
| ^~~~~~~~~~~~~~
include/linux/mlx5/device.h:96:30: note: in expansion of macro '__mlx5_dw_bit_off'
96 | __mlx5_dw_off(typ, fld))) >> __mlx5_dw_bit_off(typ, fld)) & \
| ^~~~~~~~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:2036:6: note: in expansion of macro 'MLX5_CAP_GEN'
2036 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~
In file included from include/linux/mlx5/driver.h:53,
from include/linux/mlx5/cq.h:36,
from drivers/vdpa/mlx5/net/mlx5_vnet.c:11:
>> include/linux/mlx5/device.h:50:57: error: 'struct mlx5_ifc_cmd_hca_cap_bits' has no member named 'umem_uid_0'
50 | #define __mlx5_bit_sz(typ, fld) sizeof(__mlx5_nullp(typ)->fld)
| ^~
include/linux/mlx5/device.h:57:47: note: in expansion of macro '__mlx5_bit_sz'
57 | #define __mlx5_mask(typ, fld) ((u32)((1ull << __mlx5_bit_sz(typ, fld)) - 1))
| ^~~~~~~~~~~~~
include/linux/mlx5/device.h:97:1: note: in expansion of macro '__mlx5_mask'
97 | __mlx5_mask(typ, fld))
| ^~~~~~~~~~~
include/linux/mlx5/device.h:1215:2: note: in expansion of macro 'MLX5_GET'
1215 | MLX5_GET(cmd_hca_cap, mdev->caps.hca_cur[MLX5_CAP_GENERAL], cap)
| ^~~~~~~~
drivers/vdpa/mlx5/net/mlx5_vnet.c:2036:6: note: in expansion of macro 'MLX5_CAP_GEN'
2036 | if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) {
| ^~~~~~~~~~~~


vim +140 include/linux/compiler_types.h

71391bdd2e9aab Xiaozhou Liu 2018-12-14 139
71391bdd2e9aab Xiaozhou Liu 2018-12-14 @140 #define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
71391bdd2e9aab Xiaozhou Liu 2018-12-14 141

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip