[jpirko-mlxsw:jiri_devel_linecards 17/21] drivers/net/netdevsim/dev.c:119:57: error: passing argument 4 of 'devlink_linecard_device_create' from incompatible pointer type

From: kernel test robot
Date: Sat Apr 30 2022 - 03:14:55 EST


tree: https://github.com/jpirko/linux_mlxsw jiri_devel_linecards
head: 5563b8430bfed9aac087ac84e75b388ba4d13c60
commit: dc336a0bfe84659efe23f454e49808b60aeb5e12 [17/21] TMP: devlink device type
config: parisc-allmodconfig (https://download.01.org/0day-ci/archive/20220430/202204301550.k93sqJ7b-lkp@xxxxxxxxx/config)
compiler: hppa-linux-gcc (GCC) 11.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/jpirko/linux_mlxsw/commit/dc336a0bfe84659efe23f454e49808b60aeb5e12
git remote add jpirko-mlxsw https://github.com/jpirko/linux_mlxsw
git fetch --no-tags jpirko-mlxsw jiri_devel_linecards
git checkout dc336a0bfe84659efe23f454e49808b60aeb5e12
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=parisc SHELL=/bin/bash drivers/net/netdevsim/

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

All errors (new ones prefixed by >>):

drivers/net/netdevsim/dev.c: In function 'nsim_dev_linecard_devices_create':
>> drivers/net/netdevsim/dev.c:119:57: error: passing argument 4 of 'devlink_linecard_device_create' from incompatible pointer type [-Werror=incompatible-pointer-types]
119 | nsim_dev_linecard);
| ^~~~~~~~~~~~~~~~~
| |
| struct nsim_dev_linecard *
In file included from drivers/net/netdevsim/dev.c:29:
include/net/devlink.h:1610:44: note: expected 'const char *' but argument is of type 'struct nsim_dev_linecard *'
1610 | const char *type, void *priv);
| ~~~~~~~~~~~~^~~~
>> drivers/net/netdevsim/dev.c:117:26: error: too few arguments to function 'devlink_linecard_device_create'
117 | device = devlink_linecard_device_create(nsim_dev_linecard->devlink_linecard,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/net/netdevsim/dev.c:29:
include/net/devlink.h:1607:1: note: declared here
1607 | devlink_linecard_device_create(struct devlink_linecard *linecard,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +/devlink_linecard_device_create +119 drivers/net/netdevsim/dev.c

f6a02a27389611 Jiri Pirko 2021-05-05 100
f6a02a27389611 Jiri Pirko 2021-05-05 101 static int
f6a02a27389611 Jiri Pirko 2021-05-05 102 nsim_dev_linecard_devices_create(struct nsim_dev_linecard *nsim_dev_linecard)
f6a02a27389611 Jiri Pirko 2021-05-05 103 {
f6a02a27389611 Jiri Pirko 2021-05-05 104 struct devlink_linecard_device *device;
f6a02a27389611 Jiri Pirko 2021-05-05 105 char *component_name;
f6a02a27389611 Jiri Pirko 2021-05-05 106 int err;
f6a02a27389611 Jiri Pirko 2021-05-05 107 int i;
f6a02a27389611 Jiri Pirko 2021-05-05 108
f6a02a27389611 Jiri Pirko 2021-05-05 109 snprintf(nsim_dev_linecard->device_component_name,
f6a02a27389611 Jiri Pirko 2021-05-05 110 sizeof(nsim_dev_linecard->device_component_name), "lc%u_dev0",
f6a02a27389611 Jiri Pirko 2021-05-05 111 nsim_dev_linecard->linecard_index);
f6a02a27389611 Jiri Pirko 2021-05-05 112 component_name = nsim_dev_linecard->device_component_name;
f6a02a27389611 Jiri Pirko 2021-05-05 113
f6a02a27389611 Jiri Pirko 2021-05-05 114 for (i = 0; i < NSIM_DEV_LINECARD_DEVICE_COUNT; i++) {
f6a02a27389611 Jiri Pirko 2021-05-05 115 if (i > 0)
f6a02a27389611 Jiri Pirko 2021-05-05 116 component_name = NULL;
f6a02a27389611 Jiri Pirko 2021-05-05 @117 device = devlink_linecard_device_create(nsim_dev_linecard->devlink_linecard,
f6a02a27389611 Jiri Pirko 2021-05-05 118 i, component_name,
f6a02a27389611 Jiri Pirko 2021-05-05 @119 nsim_dev_linecard);
f6a02a27389611 Jiri Pirko 2021-05-05 120 if (IS_ERR(device)) {
f6a02a27389611 Jiri Pirko 2021-05-05 121 err = PTR_ERR(device);
f6a02a27389611 Jiri Pirko 2021-05-05 122 goto rollback;
f6a02a27389611 Jiri Pirko 2021-05-05 123 }
f6a02a27389611 Jiri Pirko 2021-05-05 124 nsim_dev_linecard->devlink_device[i] = device;
f6a02a27389611 Jiri Pirko 2021-05-05 125 }
f6a02a27389611 Jiri Pirko 2021-05-05 126 return 0;
f6a02a27389611 Jiri Pirko 2021-05-05 127
f6a02a27389611 Jiri Pirko 2021-05-05 128 rollback:
f6a02a27389611 Jiri Pirko 2021-05-05 129 for (i--; i >= 0; i--) {
f6a02a27389611 Jiri Pirko 2021-05-05 130 device = nsim_dev_linecard->devlink_device[i];
f6a02a27389611 Jiri Pirko 2021-05-05 131 devlink_linecard_device_destroy(nsim_dev_linecard->devlink_linecard,
f6a02a27389611 Jiri Pirko 2021-05-05 132 device);
f6a02a27389611 Jiri Pirko 2021-05-05 133 }
f6a02a27389611 Jiri Pirko 2021-05-05 134 return err;
f6a02a27389611 Jiri Pirko 2021-05-05 135 }
f6a02a27389611 Jiri Pirko 2021-05-05 136

:::::: The code at line 119 was first introduced by commit
:::::: f6a02a2738961198c12c1eaba8e0384d8b1fa6d3 netdevsim: create couple of devices on each linecard

:::::: TO: Jiri Pirko <jiri@xxxxxxxxxx>
:::::: CC: Jiri Pirko <jiri@xxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://01.org/lkp