Commit 268369b1 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'pull-alpha' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull alpha updates from Al Viro:
 "Alpha architecture cleanups and fixes.

  One thing *not* included is lazy FPU switching stuff - this pile is
  just the straightforward stuff"

* tag 'pull-alpha' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  alpha: ret_from_fork can go straight to ret_to_user
  alpha: syscall exit cleanup
  alpha: fix handling of a3 on straced syscalls
  alpha: fix syscall entry in !AUDUT_SYSCALL case
  alpha: _TIF_ALLWORK_MASK is unused
  alpha: fix TIF_NOTIFY_SIGNAL handling
parents 405b2fc6 fa6a3bf7
......@@ -75,11 +75,7 @@ register struct thread_info *__current_thread_info __asm__("$8");
/* Work to do on interrupt/exception return. */
#define _TIF_WORK_MASK (_TIF_SIGPENDING | _TIF_NEED_RESCHED | \
_TIF_NOTIFY_RESUME)
/* Work to do on any return to userspace. */
#define _TIF_ALLWORK_MASK (_TIF_WORK_MASK \
| _TIF_SYSCALL_TRACE)
_TIF_NOTIFY_RESUME | _TIF_NOTIFY_SIGNAL)
#define TS_UAC_NOPRINT 0x0001 /* ! Preserve the following three */
#define TS_UAC_NOFIX 0x0002 /* ! flags as they match */
......
......@@ -469,13 +469,16 @@ entSys:
#ifdef CONFIG_AUDITSYSCALL
lda $6, _TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT
and $3, $6, $3
#endif
bne $3, strace
#else
blbs $3, strace /* check for SYSCALL_TRACE in disguise */
#endif
beq $4, 1f
ldq $27, 0($5)
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 */
......@@ -525,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.
*
......@@ -598,8 +596,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
......@@ -768,7 +766,7 @@ alpha_switch_to:
.align 4
.ent ret_from_fork
ret_from_fork:
lda $26, ret_from_sys_call
lda $26, ret_to_user
mov $17, $16
jmp $31, schedule_tail
.end ret_from_fork
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment