| From ecd43afdbe72017aefe48080631eb625e177ef4d Mon Sep 17 00:00:00 2001 |
| From: Vineet Gupta <vgupta@synopsys.com> |
| Date: Sun, 8 Jan 2017 19:45:48 -0800 |
| Subject: ARCv2: save r30 on kernel entry as gcc uses it for code-gen |
| |
| From: Vineet Gupta <vgupta@synopsys.com> |
| |
| commit ecd43afdbe72017aefe48080631eb625e177ef4d upstream. |
| |
| This is not exposed to userspace debugers yet, which can be done |
| independently as a seperate patch ! |
| |
| Signed-off-by: Vineet Gupta <vgupta@synopsys.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/arc/include/asm/entry-arcv2.h | 2 ++ |
| arch/arc/include/asm/ptrace.h | 2 +- |
| 2 files changed, 3 insertions(+), 1 deletion(-) |
| |
| --- a/arch/arc/include/asm/entry-arcv2.h |
| +++ b/arch/arc/include/asm/entry-arcv2.h |
| @@ -16,6 +16,7 @@ |
| ; |
| ; Now manually save: r12, sp, fp, gp, r25 |
| |
| + PUSH r30 |
| PUSH r12 |
| |
| ; Saving pt_regs->sp correctly requires some extra work due to the way |
| @@ -72,6 +73,7 @@ |
| POPAX AUX_USER_SP |
| 1: |
| POP r12 |
| + POP r30 |
| |
| .endm |
| |
| --- a/arch/arc/include/asm/ptrace.h |
| +++ b/arch/arc/include/asm/ptrace.h |
| @@ -84,7 +84,7 @@ struct pt_regs { |
| unsigned long fp; |
| unsigned long sp; /* user/kernel sp depending on where we came from */ |
| |
| - unsigned long r12; |
| + unsigned long r12, r30; |
| |
| /*------- Below list auto saved by h/w -----------*/ |
| unsigned long r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11; |