summaryrefslogtreecommitdiffstats
path: root/arch/alpha/kernel/entry.S
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2018-03-19 19:29:17 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2018-03-28 14:58:27 +0200
commit206b1c6012a8a3792948ed699f3973d7be13f6db (patch)
treece55b368a7f1afe8d889d09f1ba7a0398d569f07 /arch/alpha/kernel/entry.S
parentalpha: switch pci syscalls to SYSCALL_DEFINE (diff)
downloadlinux-206b1c6012a8a3792948ed699f3973d7be13f6db.tar.xz
linux-206b1c6012a8a3792948ed699f3973d7be13f6db.zip
alpha: get rid of pointless insn in ret_from_kernel_thread
It used to clear a3, so that signal handling on return to userland would've passed zero r0 to do_work_pending(), preventing the syscall restart logics from triggering. It had been pointless all along, since we only go there after successful do_execve(). Which does clear regs->r0 on alpha, preventing the syscall restart logics just fine, no extra help needed. Good thing, that, since back in 2012 do_work_pending() has lost the second argument, shifting the registers used to pass that thing from a3 to a2. Commit that had done that adjusted the entry.S code accordingly, but missed that one. As the result, we were left with useless insn in ret_from_kernel_thread and confusing comment to go with it. Get rid of both... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/alpha/kernel/entry.S')
-rw-r--r--arch/alpha/kernel/entry.S1
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S
index d92abb01c249..c64806a2daf5 100644
--- a/arch/alpha/kernel/entry.S
+++ b/arch/alpha/kernel/entry.S
@@ -785,7 +785,6 @@ ret_from_kernel_thread:
mov $9, $27
mov $10, $16
jsr $26, ($9)
- mov $31, $19 /* to disable syscall restarts */
br $31, ret_to_user
.end ret_from_kernel_thread