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

From: Stephen Rothwell <[email-masked]>
Date: Wed, 26 Jul 2023 14:53:56 +1000

Hi all,

After merging the mm tree, today's linux-next build (powerpc64
allnoconfig) failed like this:

In file included from arch/powerpc/include/asm/book3s/64/pgtable.h:285,
                 from arch/powerpc/include/asm/book3s/64/mmu-hash.h:20,
                 from arch/powerpc/include/asm/book3s/64/mmu.h:32,
                 from arch/powerpc/include/asm/mmu.h:396,
                 from arch/powerpc/include/asm/lppaca.h:46,
                 from arch/powerpc/include/asm/paca.h:18,
                 from arch/powerpc/include/asm/current.h:13,
                 from include/linux/thread_info.h:23,
                 from include/asm-generic/preempt.h:5,
                 from ./arch/powerpc/include/generated/asm/preempt.h:1,
                 from include/linux/preempt.h:79,
                 from include/linux/spinlock.h:56,
                 from include/linux/ipc.h:5,
                 from include/uapi/linux/sem.h:5,
                 from include/linux/sem.h:5,
                 from include/linux/compat.h:14,
                 from arch/powerpc/kernel/asm-offsets.c:12:
arch/powerpc/include/asm/book3s/64/radix.h:367:30: error: static declaration of 'vmemmap_can_optimize' follows non-static declaration
  367 | #define vmemmap_can_optimize vmemmap_can_optimize
      |                              ^~~~~~~~~~~~~~~~~~~~
include/linux/mm.h:3695:20: note: in expansion of macro 'vmemmap_can_optimize'
 3695 | static inline bool vmemmap_can_optimize(struct vmem_altmap *altmap,
      |                    ^~~~~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/book3s/64/radix.h:367:30: note: previous declaration of 'vmemmap_can_optimize' with type 'bool(struct vmem_altmap *, struct dev_pagemap *)' {aka '_Bool(struct vmem_altmap *, struct dev_pagemap *)'}
  367 | #define vmemmap_can_optimize vmemmap_can_optimize
      |                              ^~~~~~~~~~~~~~~~~~~~
arch/powerpc/include/asm/book3s/64/radix.h:368:6: note: in expansion of macro 'vmemmap_can_optimize'
  368 | bool vmemmap_can_optimize(struct vmem_altmap *altmap, struct dev_pagemap *pgmap);
      |      ^~~~~~~~~~~~~~~~~~~~

Presumably caused by commit

  f684ffc3ac9f ("powerpc/book3s64/radix: add support for vmemmap optimization for radix")

I have reverted that commit (and the following 2) for today.

-- 
Cheers,
Stephen Rothwell