linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] powerpc: fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
@ 2017-11-21  9:48 Christophe Leroy
  2017-11-21 10:03 ` Meelis Roos
  0 siblings, 1 reply; 3+ messages in thread
From: Christophe Leroy @ 2017-11-21  9:48 UTC (permalink / raw)
  To: Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Scott Wood, Meelis Roos, Balbir Singh
  Cc: linux-kernel, linuxppc-dev

On powerpc32, patch_instruction() is called by apply_feature_fixups()
which is called from early_init()

There is the following note in front of early_init():
 * Note that the kernel may be running at an address which is different
 * from the address that it was linked at, so we must use RELOC/PTRRELOC
 * to access static data (including strings).  -- paulus

Therefore, slab_is_available() cannot be called yet, and
text_poke_area must be addressed with PTRRELOC()

Fixes: 37bc3e5fd764f ("powerpc/lib/code-patching: Use alternate map
for patch_instruction()")
Reported-by: Meelis Roos <mroos@linux.ee>
Cc: Balbir Singh <bsingharora@gmail.com>
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
---
 arch/powerpc/lib/code-patching.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/arch/powerpc/lib/code-patching.c b/arch/powerpc/lib/code-patching.c
index c9de03e0c1f1..c7129e6ec0ba 100644
--- a/arch/powerpc/lib/code-patching.c
+++ b/arch/powerpc/lib/code-patching.c
@@ -146,11 +146,8 @@ int patch_instruction(unsigned int *addr, unsigned int instr)
 	 * During early early boot patch_instruction is called
 	 * when text_poke_area is not ready, but we still need
 	 * to allow patching. We just do the plain old patching
-	 * We use slab_is_available and per cpu read * via this_cpu_read
-	 * of text_poke_area. Per-CPU areas might not be up early
-	 * this can create problems with just using this_cpu_read()
 	 */
-	if (!slab_is_available() || !this_cpu_read(text_poke_area))
+	if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
 		return __patch_instruction(addr, instr);
 
 	local_irq_save(flags);
-- 
2.13.3

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] powerpc: fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
  2017-11-21  9:48 [PATCH] powerpc: fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX Christophe Leroy
@ 2017-11-21 10:03 ` Meelis Roos
  2017-11-21 10:07   ` Christophe LEROY
  0 siblings, 1 reply; 3+ messages in thread
From: Meelis Roos @ 2017-11-21 10:03 UTC (permalink / raw)
  To: Christophe Leroy
  Cc: Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Scott Wood, Balbir Singh, Linux Kernel list, linuxppc-dev

> On powerpc32, patch_instruction() is called by apply_feature_fixups()
> which is called from early_init()
>=20
> There is the following note in front of early_init():
>  * Note that the kernel may be running at an address which is different
>  * from the address that it was linked at, so we must use RELOC/PTRRELO=
C
>  * to access static data (including strings).  -- paulus
>=20
> Therefore, slab_is_available() cannot be called yet, and
> text_poke_area must be addressed with PTRRELOC()

The patch does not build - does PTRRELOC need some additional header or=20
something?

  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
  CHK     scripts/mod/devicetable-offsets.h
  CHK     include/generated/compile.h
  CALL    arch/powerpc/kernel/systbl_chk.sh
  CALL    arch/powerpc/kernel/prom_init_check.sh
  CC      arch/powerpc/lib/code-patching.o
In file included from ./include/asm-generic/percpu.h:7:0,
                 from ./arch/powerpc/include/asm/percpu.h:20,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c: In function =A1patch_instruction=A2:
arch/powerpc/lib/code-patching.c:150:22: error: implicit declaration of f=
unction =A1PTRRELOC=A2; did you mean =A1PTR_ERR=A2? [-Werror=3Dimplicit-f=
unction-declaration]
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                      ^
./include/linux/percpu-defs.h:305:9: note: in definition of macro =A1__pc=
pu_size_call_return=A2
  typeof(variable) pscr_ret__;     \
         ^~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:305:9: note: in definition of macro =A1__pc=
pu_size_call_return=A2
  typeof(variable) pscr_ret__;     \
         ^~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:206:47: note: in definition of macro =A1__v=
erify_pcpu_ptr=A2
  const void __percpu *__vpp_verify =3D (typeof((ptr) + 0))NULL; \
                                               ^~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:307:16: note: in definition of macro =A1__p=
cpu_size_call_return=A2
  switch(sizeof(variable)) {     \
                ^~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:140:9: note: in definition of macro =A1thi=
s_cpu_generic_read=A2
  typeof(pcp) __ret;      \
         ^~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:35: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                   ^
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:64: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                ^
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:94: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                     ^
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:122: note: in definition of macro =A1__nat=
ive_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                                                 ^
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:121:9: note: in definition of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:130:9: note: in definition of macro =A1__t=
his_cpu_generic_read_noirq=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/asm-generic/percpu.h:7:0,
                 from ./arch/powerpc/include/asm/percpu.h:20,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:206:47: note: in definition of macro =A1__v=
erify_pcpu_ptr=A2
  const void __percpu *__vpp_verify =3D (typeof((ptr) + 0))NULL; \
                                               ^~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:12: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
            ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:38: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
                                      ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:324:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:308:23: note: in expansion of macro =A1this=
_cpu_read_1=A2
  case 1: pscr_ret__ =3D stem##1(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:140:9: note: in definition of macro =A1thi=
s_cpu_generic_read=A2
  typeof(pcp) __ret;      \
         ^~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:35: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                   ^
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:64: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                ^
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:94: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                     ^
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:122: note: in definition of macro =A1__nat=
ive_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                                                 ^
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:121:9: note: in definition of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:130:9: note: in definition of macro =A1__t=
his_cpu_generic_read_noirq=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/asm-generic/percpu.h:7:0,
                 from ./arch/powerpc/include/asm/percpu.h:20,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:206:47: note: in definition of macro =A1__v=
erify_pcpu_ptr=A2
  const void __percpu *__vpp_verify =3D (typeof((ptr) + 0))NULL; \
                                               ^~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:12: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
            ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:38: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
                                      ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:327:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:309:23: note: in expansion of macro =A1this=
_cpu_read_2=A2
  case 2: pscr_ret__ =3D stem##2(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:140:9: note: in definition of macro =A1thi=
s_cpu_generic_read=A2
  typeof(pcp) __ret;      \
         ^~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:35: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                   ^
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:64: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                ^
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:94: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                     ^
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:122: note: in definition of macro =A1__nat=
ive_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                                                 ^
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:121:9: note: in definition of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:130:9: note: in definition of macro =A1__t=
his_cpu_generic_read_noirq=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/asm-generic/percpu.h:7:0,
                 from ./arch/powerpc/include/asm/percpu.h:20,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:206:47: note: in definition of macro =A1__v=
erify_pcpu_ptr=A2
  const void __percpu *__vpp_verify =3D (typeof((ptr) + 0))NULL; \
                                               ^~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:12: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
            ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:38: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
                                      ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:330:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:310:23: note: in expansion of macro =A1this=
_cpu_read_4=A2
  case 4: pscr_ret__ =3D stem##4(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:140:9: note: in definition of macro =A1thi=
s_cpu_generic_read=A2
  typeof(pcp) __ret;      \
         ^~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:35: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                   ^
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:64: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                ^
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:94: note: in definition of macro =A1__nati=
ve_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                     ^
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:524:122: note: in definition of macro =A1__nat=
ive_word=A2
 # define __native_word(t) (sizeof(t) =3D=3D sizeof(char) || sizeof(t) =3D=
=3D sizeof(short) || sizeof(t) =3D=3D sizeof(int) || sizeof(t) =3D=3D siz=
eof(long))
                                                                         =
                                                 ^
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:121:9: note: in definition of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/linux/linkage.h:5:0,
                 from ./include/linux/kernel.h:7,
                 from arch/powerpc/lib/code-patching.c:10:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:339:17: note: in definition of macro =A1__READ=
_ONCE=A2
  union { typeof(x) __val; char __c[1]; } __u;   \
                 ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:22: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                      ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:341:42: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size(&(x), __u.__c, sizeof(x));  \
                                          ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:30: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:246:2: note: in expansion of macro =A1__ver=
ify_pcpu_ptr=A2
  __verify_pcpu_ptr(__p);      \
  ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/compiler.h:343:50: note: in definition of macro =A1__READ=
_ONCE=A2
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                                                  ^
./include/asm-generic/percpu.h:123:10: note: in expansion of macro =A1REA=
D_ONCE=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
          ^~~~~~~~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:123:21: note: in expansion of macro =A1raw=
_cpu_ptr=A2
  __ret =3D READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
                     ^~~~~~~~~~~
./include/asm-generic/percpu.h:142:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_nopreempt=A2
   __ret =3D __this_cpu_generic_read_nopreempt(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:130:9: note: in definition of macro =A1__t=
his_cpu_generic_read_noirq=A2
  typeof(pcp) __ret;      \
         ^~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
In file included from ./include/asm-generic/percpu.h:7:0,
                 from ./arch/powerpc/include/asm/percpu.h:20,
                 from ./include/linux/percpu.h:13,
                 from ./include/linux/kprobes.h:38,
                 from arch/powerpc/lib/code-patching.c:11:
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:206:47: note: in definition of macro =A1__v=
erify_pcpu_ptr=A2
  const void __percpu *__vpp_verify =3D (typeof((ptr) + 0))NULL; \
                                               ^~~
./include/linux/percpu-defs.h:250:47: note: in expansion of macro =A1VERI=
FY_PERCPU_PTR=A2
 #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
                                               ^~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:12: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
            ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of =
unary =A1*=A2 (have =A1int=A2)
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:247:38: note: in definition of macro =A1VER=
IFY_PERCPU_PTR=A2
  (typeof(*(__p)) __kernel __force *)(__p);   \
                                      ^~~
./include/linux/percpu-defs.h:251:26: note: in expansion of macro =A1per_=
cpu_ptr=A2
 #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
                          ^~~~~~~~~~~
./include/asm-generic/percpu.h:71:3: note: in expansion of macro =A1raw_c=
pu_ptr=A2
  *raw_cpu_ptr(&(pcp));      \
   ^~~~~~~~~~~
./include/asm-generic/percpu.h:133:10: note: in expansion of macro =A1raw=
_cpu_generic_read=A2
  __ret =3D raw_cpu_generic_read(pcp);    \
          ^~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:144:11: note: in expansion of macro =A1__t=
his_cpu_generic_read_noirq=A2
   __ret =3D __this_cpu_generic_read_noirq(pcp);  \
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/asm-generic/percpu.h:333:31: note: in expansion of macro =A1thi=
s_cpu_generic_read=A2
 #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
                               ^~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu-defs.h:311:23: note: in expansion of macro =A1this=
_cpu_read_8=A2
  case 8: pscr_ret__ =3D stem##8(variable); break;   \
                       ^~~~
./include/linux/percpu-defs.h:494:29: note: in expansion of macro =A1__pc=
pu_size_call_return=A2
 #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
                             ^~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro =A1th=
is_cpu_read=A2
  if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
       ^~~~~~~~~~~~~
cc1: all warnings being treated as errors
scripts/Makefile.build:314: recipe for target 'arch/powerpc/lib/code-patc=
hing.o' failed
make[1]: *** [arch/powerpc/lib/code-patching.o] Error 1
Makefile:1024: recipe for target 'arch/powerpc/lib' failed
make: *** [arch/powerpc/lib] Error 2

--=20
Meelis Roos (mroos@linux.ee)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] powerpc: fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
  2017-11-21 10:03 ` Meelis Roos
@ 2017-11-21 10:07   ` Christophe LEROY
  0 siblings, 0 replies; 3+ messages in thread
From: Christophe LEROY @ 2017-11-21 10:07 UTC (permalink / raw)
  To: Meelis Roos
  Cc: Benjamin Herrenschmidt, Paul Mackerras, Michael Ellerman,
	Scott Wood, Balbir Singh, Linux Kernel list, linuxppc-dev


Le 21/11/2017 à 11:03, Meelis Roos a écrit :
>> On powerpc32, patch_instruction() is called by apply_feature_fixups()
>> which is called from early_init()
>>
>> There is the following note in front of early_init():
>>   * Note that the kernel may be running at an address which is different
>>   * from the address that it was linked at, so we must use RELOC/PTRRELOC
>>   * to access static data (including strings).  -- paulus
>>
>> Therefore, slab_is_available() cannot be called yet, and
>> text_poke_area must be addressed with PTRRELOC()
> 
> The patch does not build - does PTRRELOC need some additional header or
> something?

Oops, asm/setup.h is needed, don't know why it disappeared from the PATCH.
I'll submit a v2 once you have been able to test it.

Christophe


> 
>    CHK     include/config/kernel.release
>    CHK     include/generated/uapi/linux/version.h
>    CHK     include/generated/utsrelease.h
>    CHK     include/generated/bounds.h
>    CHK     include/generated/timeconst.h
>    CHK     include/generated/asm-offsets.h
>    CALL    scripts/checksyscalls.sh
>    CHK     scripts/mod/devicetable-offsets.h
>    CHK     include/generated/compile.h
>    CALL    arch/powerpc/kernel/systbl_chk.sh
>    CALL    arch/powerpc/kernel/prom_init_check.sh
>    CC      arch/powerpc/lib/code-patching.o
> In file included from ./include/asm-generic/percpu.h:7:0,
>                   from ./arch/powerpc/include/asm/percpu.h:20,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c: In function ‘patch_instruction’:
> arch/powerpc/lib/code-patching.c:150:22: error: implicit declaration of function ‘PTRRELOC’; did you mean ‘PTR_ERR’? [-Werror=implicit-function-declaration]
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                        ^
> ./include/linux/percpu-defs.h:305:9: note: in definition of macro ‘__pcpu_size_call_return’
>    typeof(variable) pscr_ret__;     \
>           ^~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:305:9: note: in definition of macro ‘__pcpu_size_call_return’
>    typeof(variable) pscr_ret__;     \
>           ^~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:206:47: note: in definition of macro ‘__verify_pcpu_ptr’
>    const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
>                                                 ^~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:307:16: note: in definition of macro ‘__pcpu_size_call_return’
>    switch(sizeof(variable)) {     \
>                  ^~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:140:9: note: in definition of macro ‘this_cpu_generic_read’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:35: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                     ^
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:64: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                  ^
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:94: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                ^
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:122: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                                            ^
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:121:9: note: in definition of macro ‘__this_cpu_generic_read_nopreempt’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:130:9: note: in definition of macro ‘__this_cpu_generic_read_noirq’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/asm-generic/percpu.h:7:0,
>                   from ./arch/powerpc/include/asm/percpu.h:20,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:206:47: note: in definition of macro ‘__verify_pcpu_ptr’
>    const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
>                                                 ^~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:12: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>              ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:38: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>                                        ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:324:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_1(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:308:23: note: in expansion of macro ‘this_cpu_read_1’
>    case 1: pscr_ret__ = stem##1(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:140:9: note: in definition of macro ‘this_cpu_generic_read’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:35: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                     ^
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:64: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                  ^
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:94: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                ^
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:122: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                                            ^
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:121:9: note: in definition of macro ‘__this_cpu_generic_read_nopreempt’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:130:9: note: in definition of macro ‘__this_cpu_generic_read_noirq’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/asm-generic/percpu.h:7:0,
>                   from ./arch/powerpc/include/asm/percpu.h:20,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:206:47: note: in definition of macro ‘__verify_pcpu_ptr’
>    const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
>                                                 ^~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:12: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>              ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:38: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>                                        ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:327:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_2(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:309:23: note: in expansion of macro ‘this_cpu_read_2’
>    case 2: pscr_ret__ = stem##2(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:140:9: note: in definition of macro ‘this_cpu_generic_read’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:35: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                     ^
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:64: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                  ^
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:94: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                ^
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:122: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                                            ^
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:121:9: note: in definition of macro ‘__this_cpu_generic_read_nopreempt’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:130:9: note: in definition of macro ‘__this_cpu_generic_read_noirq’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/asm-generic/percpu.h:7:0,
>                   from ./arch/powerpc/include/asm/percpu.h:20,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:206:47: note: in definition of macro ‘__verify_pcpu_ptr’
>    const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
>                                                 ^~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:12: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>              ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:38: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>                                        ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:330:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_4(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:310:23: note: in expansion of macro ‘this_cpu_read_4’
>    case 4: pscr_ret__ = stem##4(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:140:9: note: in definition of macro ‘this_cpu_generic_read’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:35: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                     ^
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:64: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                  ^
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:94: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                ^
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:524:122: note: in definition of macro ‘__native_word’
>   # define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
>                                                                                                                            ^
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:121:9: note: in definition of macro ‘__this_cpu_generic_read_nopreempt’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/linux/linkage.h:5:0,
>                   from ./include/linux/kernel.h:7,
>                   from arch/powerpc/lib/code-patching.c:10:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:339:17: note: in definition of macro ‘__READ_ONCE’
>    union { typeof(x) __val; char __c[1]; } __u;   \
>                   ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:22: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                        ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:341:42: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size(&(x), __u.__c, sizeof(x));  \
>                                            ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:30: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:246:2: note: in expansion of macro ‘__verify_pcpu_ptr’
>    __verify_pcpu_ptr(__p);      \
>    ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/compiler.h:343:50: note: in definition of macro ‘__READ_ONCE’
>     __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
>                                                    ^
> ./include/asm-generic/percpu.h:123:10: note: in expansion of macro ‘READ_ONCE’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>            ^~~~~~~~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:123:21: note: in expansion of macro ‘raw_cpu_ptr’
>    __ret = READ_ONCE(*raw_cpu_ptr(&(pcp)));   \
>                       ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:142:11: note: in expansion of macro ‘__this_cpu_generic_read_nopreempt’
>     __ret = __this_cpu_generic_read_nopreempt(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./arch/powerpc/include/asm/percpu.h:20:0,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:130:9: note: in definition of macro ‘__this_cpu_generic_read_noirq’
>    typeof(pcp) __ret;      \
>           ^~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> In file included from ./include/asm-generic/percpu.h:7:0,
>                   from ./arch/powerpc/include/asm/percpu.h:20,
>                   from ./include/linux/percpu.h:13,
>                   from ./include/linux/kprobes.h:38,
>                   from arch/powerpc/lib/code-patching.c:11:
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:206:47: note: in definition of macro ‘__verify_pcpu_ptr’
>    const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
>                                                 ^~~
> ./include/linux/percpu-defs.h:250:47: note: in expansion of macro ‘VERIFY_PERCPU_PTR’
>   #define per_cpu_ptr(ptr, cpu) ({ (void)(cpu); VERIFY_PERCPU_PTR(ptr); })
>                                                 ^~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:12: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>              ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:21: error: invalid type argument of unary ‘*’ (have ‘int’)
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:247:38: note: in definition of macro ‘VERIFY_PERCPU_PTR’
>    (typeof(*(__p)) __kernel __force *)(__p);   \
>                                        ^~~
> ./include/linux/percpu-defs.h:251:26: note: in expansion of macro ‘per_cpu_ptr’
>   #define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
>                            ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:71:3: note: in expansion of macro ‘raw_cpu_ptr’
>    *raw_cpu_ptr(&(pcp));      \
>     ^~~~~~~~~~~
> ./include/asm-generic/percpu.h:133:10: note: in expansion of macro ‘raw_cpu_generic_read’
>    __ret = raw_cpu_generic_read(pcp);    \
>            ^~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:144:11: note: in expansion of macro ‘__this_cpu_generic_read_noirq’
>     __ret = __this_cpu_generic_read_noirq(pcp);  \
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./include/asm-generic/percpu.h:333:31: note: in expansion of macro ‘this_cpu_generic_read’
>   #define this_cpu_read_8(pcp)  this_cpu_generic_read(pcp)
>                                 ^~~~~~~~~~~~~~~~~~~~~
> ./include/linux/percpu-defs.h:311:23: note: in expansion of macro ‘this_cpu_read_8’
>    case 8: pscr_ret__ = stem##8(variable); break;   \
>                         ^~~~
> ./include/linux/percpu-defs.h:494:29: note: in expansion of macro ‘__pcpu_size_call_return’
>   #define this_cpu_read(pcp)  __pcpu_size_call_return(this_cpu_read_, pcp)
>                               ^~~~~~~~~~~~~~~~~~~~~~~
> arch/powerpc/lib/code-patching.c:150:7: note: in expansion of macro ‘this_cpu_read’
>    if (!this_cpu_read(*PTRRELOC(&text_poke_area)))
>         ^~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> scripts/Makefile.build:314: recipe for target 'arch/powerpc/lib/code-patching.o' failed
> make[1]: *** [arch/powerpc/lib/code-patching.o] Error 1
> Makefile:1024: recipe for target 'arch/powerpc/lib' failed
> make: *** [arch/powerpc/lib] Error 2
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-11-21 10:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-21  9:48 [PATCH] powerpc: fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX Christophe Leroy
2017-11-21 10:03 ` Meelis Roos
2017-11-21 10:07   ` Christophe LEROY

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).