diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-11-30 16:24:57 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-12-01 11:05:17 +0000 |
commit | 04a7052c8399edc95b5e120c980823ccaade6aaf (patch) | |
tree | 230e75476b3d1fae60bfaf98d4e407d65b0be114 /arch/mips/kernel/scall64-o32.S | |
parent | ecd5a739048b4d94e4ae3545196eb752d6776c97 (diff) | |
download | lwn-04a7052c8399edc95b5e120c980823ccaade6aaf.tar.gz lwn-04a7052c8399edc95b5e120c980823ccaade6aaf.zip |
[MIPS] Fix register handling in syscalls when debugging.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/scall64-o32.S')
-rw-r--r-- | arch/mips/kernel/scall64-o32.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S index 5a16401e443a..3d338ca7eeeb 100644 --- a/arch/mips/kernel/scall64-o32.S +++ b/arch/mips/kernel/scall64-o32.S @@ -124,6 +124,8 @@ trace_a_syscall: li a1, 0 jal do_syscall_trace + move t0, s0 + RESTORE_STATIC ld a0, PT_R4(sp) # Restore argument registers ld a1, PT_R5(sp) ld a2, PT_R6(sp) @@ -132,7 +134,7 @@ trace_a_syscall: ld a5, PT_R9(sp) ld a6, PT_R10(sp) ld a7, PT_R11(sp) # For indirect syscalls - jalr s0 + jalr t0 li t0, -EMAXERRNO - 1 # error? sltu t0, t0, v0 |