From: Al Viro Date: Sat, 18 Sep 2021 22:27:12 +0000 (-0400) Subject: alpha: fix handling of a3 on straced syscalls X-Git-Tag: v6.2-rc1~162^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=19a09e426893a3cb08b97147b8dc22bdfcab3bba;p=thirdparty%2Fkernel%2Flinux.git 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 --- diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S index c41a5a9c3b9f2..78fe7ee254250 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