Message ID | 20191031164637.48901-5-samitolvanen@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | add support for Clang's Shadow Call Stack | expand |
On Thu, Oct 31, 2019 at 09:46:24AM -0700, samitolvanen@google.com wrote: > From: Ard Biesheuvel <ard.biesheuvel@linaro.org> > > The code in __cpu_soft_restart() uses x18 as an arbitrary temp register, > which will shortly be disallowed. So use x8 instead. > > Link: https://patchwork.kernel.org/patch/9836877/ > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> This one is easy to validate! ;) Reviewed-by: Kees Cook <keescook@chromium.org> -Kees > Signed-off-by: Sami Tolvanen <samitolvanen@google.com> > Reviewed-by: Mark Rutland <mark.rutland@arm.com> > --- > 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 > -- > 2.24.0.rc0.303.g954a862665-goog >
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