[SPARC]: Add support for *at(), ppoll, and pselect syscalls.

This also includes by necessity _TIF_RESTORE_SIGMASK support,
which actually resulted in a lot of cleanups.

The sparc signal handling code is quite a mess and I should
clean it up some day.

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller
2006-01-19 02:42:49 -08:00
parent f7111ceb52
commit 2d7d5f0511
16 changed files with 189 additions and 427 deletions

View File

@ -1276,62 +1276,6 @@ sys_sigstack:
call do_sys_sigstack
mov %l5, %o7
.align 4
.globl sys_sigpause
sys_sigpause:
/* Note: %o0 already has correct value... */
call do_sigpause
add %sp, STACKFRAME_SZ, %o1
ld [%curptr + TI_FLAGS], %l5
andcc %l5, _TIF_SYSCALL_TRACE, %g0
be 1f
nop
call syscall_trace
nop
1:
/* We are returning to a signal handler. */
RESTORE_ALL
.align 4
.globl sys_sigsuspend
sys_sigsuspend:
call do_sigsuspend
add %sp, STACKFRAME_SZ, %o0
ld [%curptr + TI_FLAGS], %l5
andcc %l5, _TIF_SYSCALL_TRACE, %g0
be 1f
nop
call syscall_trace
nop
1:
/* We are returning to a signal handler. */
RESTORE_ALL
.align 4
.globl sys_rt_sigsuspend
sys_rt_sigsuspend:
/* Note: %o0, %o1 already have correct value... */
call do_rt_sigsuspend
add %sp, STACKFRAME_SZ, %o2
ld [%curptr + TI_FLAGS], %l5
andcc %l5, _TIF_SYSCALL_TRACE, %g0
be 1f
nop
call syscall_trace
nop
1:
/* We are returning to a signal handler. */
RESTORE_ALL
.align 4
.globl sys_sigreturn
sys_sigreturn: