alpha: syscall exit cleanup
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 18 Sep 2021 22:38:15 +0000 (18:38 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sun, 30 Oct 2022 03:31:15 +0000 (23:31 -0400)
$ret_success consists of two insn + branch to ret_from_syscall.
The thing is, those insns are identical to the ones immediately
preceding ret_from_syscall...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/alpha/kernel/entry.S

index 78fe7ee..43380fb 100644 (file)
@@ -478,6 +478,7 @@ entSys:
 1:     jsr     $26, ($27), sys_ni_syscall
        ldgp    $gp, 0($26)
        blt     $0, $syscall_error      /* the call failed */
+$ret_success:
        stq     $0, 0($sp)
        stq     $31, 72($sp)            /* a3=0 => no error */
 
@@ -527,11 +528,6 @@ $syscall_error:
        stq     $1, 72($sp)     /* a3 for return */
        br      ret_from_sys_call
 
-$ret_success:
-       stq     $0, 0($sp)
-       stq     $31, 72($sp)    /* a3=0 => no error */
-       br      ret_from_sys_call
-
 /*
  * Do all cleanup when returning from all interrupts and system calls.
  *