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

From: Axel Rasmussen
Date: Tue Mar 09 2021 - 23:45:43 EST


On Tue, Mar 9, 2021 at 7:16 PM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the akpm-current tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:

Hi Stephen,

Sorry about the failure! Indeed, I had guarded this in the header, but
not in the .c file. I sent a v2.5 of the patch earlier today which
fixes the issue, but it hasn't made its way to Andrew's tree just yet.
I'll CC you on that thread as well, as an FYI. Reverting the patches
is also a fine workaround.

Next time, I'll test with more config permutations. :)

>
> mm/shmem.c:2365:12: warning: 'enum mcopy_atomic_mode' declared inside parameter list will not be visible outside of this definition or declaration
> 2365 | enum mcopy_atomic_mode mode, struct page **pagep)
> | ^~~~~~~~~~~~~~~~~
> mm/shmem.c:2365:30: error: parameter 6 ('mode') has incomplete type
> 2365 | enum mcopy_atomic_mode mode, struct page **pagep)
> | ~~~~~~~~~~~~~~~~~~~~~~~^~~~
> mm/shmem.c:2362:5: error: function declaration isn't a prototype [-Werror=strict-prototypes]
> 2362 | int shmem_mcopy_atomic_pte(struct mm_struct *dst_mm, pmd_t *dst_pmd,
> | ^~~~~~~~~~~~~~~~~~~~~~
> mm/shmem.c: In function 'shmem_mcopy_atomic_pte':
> mm/shmem.c:2367:30: error: 'MCOPY_ATOMIC_CONTINUE' undeclared (first use in this function)
> 2367 | bool is_continue = (mode == MCOPY_ATOMIC_CONTINUE);
> | ^~~~~~~~~~~~~~~~~~~~~
> mm/shmem.c:2367:30: note: each undeclared identifier is reported only once for each function it appears in
> mm/shmem.c:2394:15: error: 'MCOPY_ATOMIC_NORMAL' undeclared (first use in this function)
> 2394 | if (mode == MCOPY_ATOMIC_NORMAL) { /* mcopy_atomic */
> | ^~~~~~~~~~~~~~~~~~~
>
> Caused by commit
>
> 3407bec05d6d ("userfaultfd: support minor fault handling for shmem")
>
> # CONFIG_USERFAULTFD is not set
>
> I have reverted that commit (and the following 4 as well).
> --
> Cheers,
> Stephen Rothwell