From: Guo Ren Date: Tue, 28 Jul 2020 16:25:23 +0000 (+0000) Subject: csky: Fixup kprobes handler couldn't change pc X-Git-Tag: v5.9-rc1~130^2~8 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=a5447fb9b32eb33b2f0f09a63e4852b46af5b056;p=users%2Fhch%2Fmisc.git csky: Fixup kprobes handler couldn't change pc The "Changing Execution Path" section in the Documentation/kprobes.txt said: Since kprobes can probe into a running kernel code, it can change the register set, including instruction pointer. Signed-off-by: Guo Ren Cc: Arnd Bergmann --- diff --git a/arch/csky/abiv2/mcount.S b/arch/csky/abiv2/mcount.S index 911512bf480f..d745e10c10b0 100644 --- a/arch/csky/abiv2/mcount.S +++ b/arch/csky/abiv2/mcount.S @@ -55,7 +55,9 @@ .macro mcount_exit_regs RESTORE_REGS_FTRACE - ldw t1, (sp, 0) + subi sp, 152 + ldw t1, (sp, 4) + addi sp, 152 ldw r8, (sp, 4) ldw lr, (sp, 8) addi sp, 12