mirror of
https://github.com/torvalds/linux.git
synced 2024-10-26 15:02:39 +00:00
alpha: unify the glue for sigreturn-like syscalls
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
060581c158
commit
8a68060cef
|
@ -791,7 +791,7 @@ ret_from_kernel_thread:
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Special system calls. Most of these are special in that they either
|
* Special system calls. Most of these are special in that they either
|
||||||
* have to play switch_stack games or in some way use the pt_regs struct.
|
* have to play switch_stack games.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
.macro fork_like name
|
.macro fork_like name
|
||||||
|
@ -812,35 +812,25 @@ fork_like fork
|
||||||
fork_like vfork
|
fork_like vfork
|
||||||
fork_like clone
|
fork_like clone
|
||||||
|
|
||||||
|
.macro sigreturn_like name
|
||||||
.align 4
|
.align 4
|
||||||
.globl sys_sigreturn
|
.globl sys_\name
|
||||||
.ent sys_sigreturn
|
.ent sys_\name
|
||||||
sys_sigreturn:
|
sys_\name:
|
||||||
.prologue 0
|
.prologue 0
|
||||||
lda $9, ret_from_straced
|
lda $9, ret_from_straced
|
||||||
cmpult $26, $9, $9
|
cmpult $26, $9, $9
|
||||||
lda $sp, -SWITCH_STACK_SIZE($sp)
|
lda $sp, -SWITCH_STACK_SIZE($sp)
|
||||||
jsr $26, do_sigreturn
|
jsr $26, do_\name
|
||||||
bne $9, 1f
|
bne $9, 1f
|
||||||
jsr $26, syscall_trace_leave
|
jsr $26, syscall_trace_leave
|
||||||
1: br $1, undo_switch_stack
|
1: br $1, undo_switch_stack
|
||||||
br ret_from_sys_call
|
br ret_from_sys_call
|
||||||
.end sys_sigreturn
|
.end sys_\name
|
||||||
|
.endm
|
||||||
|
|
||||||
.align 4
|
sigreturn_like sigreturn
|
||||||
.globl sys_rt_sigreturn
|
sigreturn_like rt_sigreturn
|
||||||
.ent sys_rt_sigreturn
|
|
||||||
sys_rt_sigreturn:
|
|
||||||
.prologue 0
|
|
||||||
lda $9, ret_from_straced
|
|
||||||
cmpult $26, $9, $9
|
|
||||||
lda $sp, -SWITCH_STACK_SIZE($sp)
|
|
||||||
jsr $26, do_rt_sigreturn
|
|
||||||
bne $9, 1f
|
|
||||||
jsr $26, syscall_trace_leave
|
|
||||||
1: br $1, undo_switch_stack
|
|
||||||
br ret_from_sys_call
|
|
||||||
.end sys_rt_sigreturn
|
|
||||||
|
|
||||||
.align 4
|
.align 4
|
||||||
.globl alpha_syscall_zero
|
.globl alpha_syscall_zero
|
||||||
|
|
Loading…
Reference in New Issue
Block a user