powerpc/code-patching: Use WARN_ON and fix check in poking_init
authorBenjamin Gray <bgray@linux.ibm.com>
Wed, 9 Nov 2022 04:51:05 +0000 (15:51 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 30 Nov 2022 10:46:48 +0000 (21:46 +1100)
commit071c95c1acbd96e76bab8b25b5cad0d71a011f37
treeba49701bb0bb0f32c37250a8e535f7141c1df247
parent3671f4ebe3eb12e7222e4d7b0f94e85cfe34253a
powerpc/code-patching: Use WARN_ON and fix check in poking_init

BUG_ON() when failing to initialise the code patching window is
unnecessary, and use of BUG_ON is discouraged. We don't set
poking_init_done in this case, so failure to init the boot CPU will
result in a strict RWX error when a following patch_instruction uses
raw_patch_instruction. If it only fails for later CPUs, they won't be
onlined in the first place.

The return value of cpuhp_setup_state() is also >= 0 on success,
so check for < 0.

Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221109045112.187069-3-bgray@linux.ibm.com
arch/powerpc/lib/code-patching.c