powerpc/64: Include cache.h directly in paca.h
authorMichael Ellerman <mpe@ellerman.id.au>
Fri, 27 May 2022 11:15:41 +0000 (21:15 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 27 May 2022 12:20:09 +0000 (22:20 +1000)
paca.h uses ____cacheline_aligned without directly including cache.h,
where it's defined.

For Book3S builds that's OK because paca.h includes lppaca.h, and it
does include cache.h.

But Book3E builds have been getting cache.h indirectly via printk.h,
which is dicey, and in fact that include was recently removed, leading
to build errors such as:

  ld: fs/isofs/dir.o:(.bss+0x0): multiple definition of `____cacheline_aligned'; fs/isofs/namei.o:(.bss+0x0): first defined here

So include cache.h directly to fix the build error.

Fixes: 534aa1dc975a ("printk: stop including cache.h from printk.h")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/paca.h

index 03330b7d835f8f303586e4d7292f3dc34d589598..4d7aaab8270232446fd6715d3fde0a3d1596294c 100644 (file)
@@ -12,6 +12,7 @@
 
 #ifdef CONFIG_PPC64
 
+#include <linux/cache.h>
 #include <linux/string.h>
 #include <asm/types.h>
 #include <asm/lppaca.h>