diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2021-09-19 01:27:12 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2022-10-30 06:31:15 +0300 |
commit | 19a09e426893a3cb08b97147b8dc22bdfcab3bba (patch) | |
tree | 2d6e8059aa7ede6b3b526b577e89f12e51818205 | |
parent | f7b2431a6d22f7a91c567708e071dfcd6d66db14 (diff) | |
download | linux-19a09e426893a3cb08b97147b8dc22bdfcab3bba.tar.xz |
alpha: fix handling of a3 on straced syscalls
For successful syscall that happens to return a negative, we want
a3 set to 0, no matter whether it's straced or not. As it is,
for straced case we leave the value it used to have on syscall
entry. Easily fixed, fortunately...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | arch/alpha/kernel/entry.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S index c41a5a9c3b9f..78fe7ee25425 100644 --- a/arch/alpha/kernel/entry.S +++ b/arch/alpha/kernel/entry.S @@ -600,8 +600,8 @@ ret_from_straced: /* check return.. */ blt $0, $strace_error /* the call failed */ - stq $31, 72($sp) /* a3=0 => no error */ $strace_success: + stq $31, 72($sp) /* a3=0 => no error */ stq $0, 0($sp) /* save return value */ DO_SWITCH_STACK |