2020-04-22 06:41:06

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: build failure after merge of the akpm tree

Hi all,

After merging the akpm tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

arch/powerpc/platforms/powernv/vas-fault.c: In function 'update_csb':
arch/powerpc/platforms/powernv/vas-fault.c:130:2: error: implicit declaration of function 'use_mm' [-Werror=implicit-function-declaration]
130 | use_mm(window->mm);
| ^~~~~~
arch/powerpc/platforms/powernv/vas-fault.c:142:2: error: implicit declaration of function 'unuse_mm' [-Werror=implicit-function-declaration]
142 | unuse_mm(window->mm);
| ^~~~~~~~

Caused by commit

7fe021a3f1c9 ("kernel: better document the use_mm/unuse_mm API contract")

interacting with commit

c96c4436aba4 ("powerpc/vas: Update CSB and notify process for fault CRBs")

from the powerpc tree.

I added the following patch for today:

From: Stephen Rothwell <[email protected]>
Date: Wed, 22 Apr 2020 16:35:23 +1000
Subject: [PATCH] powerpc/vas: fix up for {un}use_mm() rename

Signed-off-by: Stephen Rothwell <[email protected]>
---
arch/powerpc/platforms/powernv/vas-fault.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/platforms/powernv/vas-fault.c b/arch/powerpc/platforms/powernv/vas-fault.c
index 25db70be4c9c..266a6ca5e15e 100644
--- a/arch/powerpc/platforms/powernv/vas-fault.c
+++ b/arch/powerpc/platforms/powernv/vas-fault.c
@@ -127,7 +127,7 @@ static void update_csb(struct vas_window *window,
return;
}

- use_mm(window->mm);
+ kthread_use_mm(window->mm);
rc = copy_to_user(csb_addr, &csb, sizeof(csb));
/*
* User space polls on csb.flags (first byte). So add barrier
@@ -139,7 +139,7 @@ static void update_csb(struct vas_window *window,
smp_mb();
rc = copy_to_user(csb_addr, &csb, sizeof(u8));
}
- unuse_mm(window->mm);
+ kthread_unuse_mm(window->mm);
put_task_struct(tsk);

/* Success */
--
2.25.1

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2020-04-22 18:38:56

by Haren Myneni

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the akpm tree


Thanks for fixing. Tested with this patch and 7fe021a3f1c9 ("kernel: better document the use_mm/unuse_mm API contract").

Acked-by: Haren Myneni <[email protected]>

On 4/21/20 11:39 PM, Stephen Rothwell wrote:
> Hi all,
>
> After merging the akpm tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
>
> arch/powerpc/platforms/powernv/vas-fault.c: In function 'update_csb':
> arch/powerpc/platforms/powernv/vas-fault.c:130:2: error: implicit declaration of function 'use_mm' [-Werror=implicit-function-declaration]
> 130 | use_mm(window->mm);
> | ^~~~~~
> arch/powerpc/platforms/powernv/vas-fault.c:142:2: error: implicit declaration of function 'unuse_mm' [-Werror=implicit-function-declaration]
> 142 | unuse_mm(window->mm);
> | ^~~~~~~~
>
> Caused by commit
>
> 7fe021a3f1c9 ("kernel: better document the use_mm/unuse_mm API contract")
>
> interacting with commit
>
> c96c4436aba4 ("powerpc/vas: Update CSB and notify process for fault CRBs")
>
> from the powerpc tree.
>
> I added the following patch for today:
>
> From: Stephen Rothwell <[email protected]>
> Date: Wed, 22 Apr 2020 16:35:23 +1000
> Subject: [PATCH] powerpc/vas: fix up for {un}use_mm() rename
>
> Signed-off-by: Stephen Rothwell <[email protected]>
> ---
> arch/powerpc/platforms/powernv/vas-fault.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/platforms/powernv/vas-fault.c b/arch/powerpc/platforms/powernv/vas-fault.c
> index 25db70be4c9c..266a6ca5e15e 100644
> --- a/arch/powerpc/platforms/powernv/vas-fault.c
> +++ b/arch/powerpc/platforms/powernv/vas-fault.c
> @@ -127,7 +127,7 @@ static void update_csb(struct vas_window *window,
> return;
> }
>
> - use_mm(window->mm);
> + kthread_use_mm(window->mm);
> rc = copy_to_user(csb_addr, &csb, sizeof(csb));
> /*
> * User space polls on csb.flags (first byte). So add barrier
> @@ -139,7 +139,7 @@ static void update_csb(struct vas_window *window,
> smp_mb();
> rc = copy_to_user(csb_addr, &csb, sizeof(u8));
> }
> - unuse_mm(window->mm);
> + kthread_unuse_mm(window->mm);
> put_task_struct(tsk);
>
> /* Success */
>