diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2018-03-19 14:29:17 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2018-03-28 08:58:27 -0400 |
commit | 206b1c6012a8a3792948ed699f3973d7be13f6db (patch) | |
tree | ce55b368a7f1afe8d889d09f1ba7a0398d569f07 | |
parent | e4eacd6b899abc5fa2a0b6d20d5c430feba96858 (diff) | |
download | linux-stable-206b1c6012a8a3792948ed699f3973d7be13f6db.tar.gz linux-stable-206b1c6012a8a3792948ed699f3973d7be13f6db.tar.bz2 linux-stable-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>
-rw-r--r-- | arch/alpha/kernel/entry.S | 1 |
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 |