Re: [PATCH V3 vhost next 10/10] vdpa/mlx5: Add VDPA driver for supported mlx5 devices

From: Eli Cohen
Date: Tue Aug 04 2020 - 07:58:31 EST


On Tue, Jul 28, 2020 at 04:43:00PM +0300, kernel test robot wrote:
> Hi Eli,
>
> Thank you for the patch! Yet something to improve:
>
> [auto build test ERROR on next-20200727]
>
> url: https://github.com/0day-ci/linux/commits/Eli-Cohen/VDPA-support-for-Mellanox-ConnectX-devices/20200728-140938
> base: e9a523ff8f76de0768857f02ea76437d3b39d151
> config: mips-allmodconfig (attached as .config)
> compiler: mips-linux-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
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>
> All errors (new ones prefixed by >>, old ones prefixed by <<):
>
> ERROR: modpost: "fw_arg3" [drivers/mtd/parsers/bcm63xxpart.ko] undefined!
> >> ERROR: modpost: "__udivdi3" [drivers/vdpa/mlx5/mlx5_vdpa.ko] undefined!

I don't know where this complaint comes from. When I follow the steps
above to reproduce, I find myself failing on code unrelated to my patch
set so I can get my code compiled:

drivers/rpmsg/virtio_rpmsg_bus.c:88:8: error: redefinition of 'struct rpmsg_hdr'
88 | struct rpmsg_hdr {
| ^~~~~~~~~
In file included from drivers/rpmsg/virtio_rpmsg_bus.c:28:
./include/linux/virtio_rpmsg.h:21:8: note: originally defined here
21 | struct rpmsg_hdr {
| ^~~~~~~~~
drivers/rpmsg/virtio_rpmsg_bus.c:109:8: error: redefinition of 'struct
rpmsg_ns_msg'
109 | struct rpmsg_ns_msg {
| ^~~~~~~~~~~~
In file included from drivers/rpmsg/virtio_rpmsg_bus.c:28:
./include/linux/virtio_rpmsg.h:42:8: note: originally defined here
42 | struct rpmsg_ns_msg {
| ^~~~~~~~~~~~


I think the reason for the complaint comes from usage of DIV_ROUND_UP()
which somehow does not work on mips.

I can try to avoid using this macro and implement something of my own,
unless someone has a better idea what's going on here.

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