From 1e55c6fbd39a4c428dee441947dc4a56e3d273ad Mon Sep 17 00:00:00 2001 From: Ard Biesheuvel Date: Tue, 3 Apr 2018 10:44:32 -0700 Subject: [PATCH] FROMLIST: arm64: kernel: avoid x18 in __cpu_soft_restart The code in __cpu_soft_restart() uses x18 as an arbitrary temp register, which will shortly be disallowed. So use x8 instead. Bug: 145210207 Change-Id: Iad10392005b66e6bf3a0f00c40024448e9798b89 (am from https://lore.kernel.org/patchwork/patch/1149053/) Link: https://patchwork.kernel.org/patch/9836877/ Signed-off-by: Ard Biesheuvel Reviewed-by: Mark Rutland Reviewed-by: Kees Cook [Sami: updated commit message] Signed-off-by: Sami Tolvanen --- arch/arm64/kernel/cpu-reset.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/kernel/cpu-reset.S b/arch/arm64/kernel/cpu-reset.S index 6ea337d464c4..32c7bf858dd9 100644 --- a/arch/arm64/kernel/cpu-reset.S +++ b/arch/arm64/kernel/cpu-reset.S @@ -42,11 +42,11 @@ ENTRY(__cpu_soft_restart) mov x0, #HVC_SOFT_RESTART hvc #0 // no return -1: mov x18, x1 // entry +1: mov x8, x1 // entry mov x0, x2 // arg0 mov x1, x3 // arg1 mov x2, x4 // arg2 - br x18 + br x8 ENDPROC(__cpu_soft_restart) .popsection