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

From: Jason Gunthorpe <[email-masked]>
Date: Thu, 14 Nov 2019 12:58:47 +0000

On Thu, Nov 14, 2019 at 04:34:35PM +1100, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the hmm tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
> 
> drivers/infiniband/hw/hfi1/user_exp_rcv.c: In function 'set_rcvarray_entry':
> drivers/infiniband/hw/hfi1/user_exp_rcv.c:768:33: warning: passing argument 2 of 'mmu_interval_notifier_insert' makes pointer from integer without a cast [-Wint-conversion]
>   768 |    &node->notifier, tbuf->vaddr + (pageidx * PAGE_SIZE),
>       |                     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
>       |                                 |
>       |                                 long unsigned int
> In file included from include/rdma/ib_verbs.h:59,
>                  from include/rdma/ib_hdrs.h:53,
>                  from drivers/infiniband/hw/hfi1/hfi.h:68,
>                  from drivers/infiniband/hw/hfi1/mmu_rb.h:50,
>                  from drivers/infiniband/hw/hfi1/user_exp_rcv.c:50:
> include/linux/mmu_notifier.h:295:24: note: expected 'struct mm_struct *' but argument is of type 'long unsigned int'
>   295 |      struct mm_struct *mm, unsigned long start,
>       |      ~~~~~~~~~~~~~~~~~~^~
> drivers/infiniband/hw/hfi1/user_exp_rcv.c:769:26: warning: passing argument 4 of 'mmu_interval_notifier_insert' makes integer from pointer without a cast [-Wint-conversion]
>   769 |    npages * PAGE_SIZE, fd->mm);
>       |                        ~~^~~~
>       |                          |
>       |                          struct mm_struct *
> In file included from include/rdma/ib_verbs.h:59,
>                  from include/rdma/ib_hdrs.h:53,
>                  from drivers/infiniband/hw/hfi1/hfi.h:68,
>                  from drivers/infiniband/hw/hfi1/mmu_rb.h:50,
>                  from drivers/infiniband/hw/hfi1/user_exp_rcv.c:50:
> include/linux/mmu_notifier.h:296:20: note: expected 'long unsigned int' but argument is of type 'struct mm_struct *'
>   296 |      unsigned long length,
>       |      ~~~~~~~~~~~~~~^~~~~~
> drivers/infiniband/hw/hfi1/user_exp_rcv.c:767:9: error: too few arguments to function 'mmu_interval_notifier_insert'
>   767 |   ret = mmu_interval_notifier_insert(
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from include/rdma/ib_verbs.h:59,
>                  from include/rdma/ib_hdrs.h:53,
>                  from drivers/infiniband/hw/hfi1/hfi.h:68,
>                  from drivers/infiniband/hw/hfi1/mmu_rb.h:50,
>                  from drivers/infiniband/hw/hfi1/user_exp_rcv.c:50:
> include/linux/mmu_notifier.h:294:5: note: declared here
>   294 | int mmu_interval_notifier_insert(struct mmu_interval_notifier *mni,
>       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>   c90dad714405 ("RDMA/hfi1: Use mmu_interval_notifier_insert for user_exp_rcv")
> 
> I have used the hmm tree from next-20191113 for today.

Another case of 0-day missing stuff, it gave this branch an OK :( 

I'll fix it for tomorrow

Thanks,
Jason