Re: linux-next: build failure after merge of the rdma tree

From: Devesh Sharma
Date: Tue Feb 25 2020 - 22:05:37 EST


On Wed, Feb 26, 2020 at 8:21 AM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the rdma tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>
> drivers/infiniband/hw/bnxt_re/qplib_res.c: In function '__free_pbl':
> drivers/infiniband/hw/bnxt_re/qplib_res.c:78:2: error: implicit declaration of function 'vfree'; did you mean 'kfree'? [-Werror=implicit-function-declaration]
> 78 | vfree(pbl->pg_arr);
> | ^~~~~
> | kfree
> drivers/infiniband/hw/bnxt_re/qplib_res.c: In function '__alloc_pbl':
> drivers/infiniband/hw/bnxt_re/qplib_res.c:117:16: error: implicit declaration of function 'vmalloc'; did you mean 'kmalloc'? [-Werror=implicit-function-declaration]
> 117 | pbl->pg_arr = vmalloc(pages * sizeof(void *));
> | ^~~~~~~
> | kmalloc
> drivers/infiniband/hw/bnxt_re/qplib_res.c:117:14: warning: assignment to 'void **' from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 117 | pbl->pg_arr = vmalloc(pages * sizeof(void *));
> | ^
> drivers/infiniband/hw/bnxt_re/qplib_res.c:121:18: warning: assignment to 'dma_addr_t *' {aka 'long long unsigned int *'} from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 121 | pbl->pg_map_arr = vmalloc(pages * sizeof(dma_addr_t));
> | ^
>
> Caused by commit
>
> 0c4dcd602817 ("RDMA/bnxt_re: Refactor hardware queue memory allocation")
>
> I added the following fix for today:
>
> From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Date: Wed, 26 Feb 2020 13:46:02 +1100
> Subject: [PATCH] RDMA/bnxt_re: using vmalloc requires including vmalloc.h
>
> Fixes: 0c4dcd602817 ("RDMA/bnxt_re: Refactor hardware queue memory allocation")
> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> ---
> drivers/infiniband/hw/bnxt_re/qplib_res.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/infiniband/hw/bnxt_re/qplib_res.c b/drivers/infiniband/hw/bnxt_re/qplib_res.c
> index 4346b95963cf..fc5909c7f2e0 100644
> --- a/drivers/infiniband/hw/bnxt_re/qplib_res.c
> +++ b/drivers/infiniband/hw/bnxt_re/qplib_res.c
> @@ -44,6 +44,7 @@
> #include <linux/inetdevice.h>
> #include <linux/dma-mapping.h>
> #include <linux/if_vlan.h>
> +#include <linux/vmalloc.h>
> #include "roce_hsi.h"
> #include "qplib_res.h"
> #include "qplib_sp.h"
> --
> 2.25.0
>
> --
> Cheers,
> Stephen Rothwell

Thanks!
Acked-by: Devesh Sharma <devesh.sharma@xxxxxxxxxxxx>