Skip to content

Commit

Permalink
arm64: use {COMPAT,}SYSCALL_DEFINE0 for sigreturn
Browse files Browse the repository at this point in the history
We don't currently annotate our various sigreturn functions as syscalls,
as we need to do to use pt_regs syscall wrappers.

Let's mark them as real syscalls.

For compat_sys_sigreturn and compat_sys_rt_sigreturn, this changes the
return type from int to long, matching the prototypes in sys32.c.

Signed-off-by: Mark Rutland <[email protected]>
Reviewed-by: Dominik Brodowski <[email protected]>
Acked-by: Catalin Marinas <[email protected]>
Cc: Will Deacon <[email protected]>
Signed-off-by: Will Deacon <[email protected]>
  • Loading branch information
Mark Rutland authored and wildea01 committed Jul 12, 2018
1 parent 3f7decc commit bf4ce5c
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion arch/arm64/kernel/signal.c
Original file line number Diff line number Diff line change
Expand Up @@ -539,7 +539,7 @@ static int restore_sigframe(struct pt_regs *regs,
return err;
}

asmlinkage long sys_rt_sigreturn(void)
SYSCALL_DEFINE0(rt_sigreturn)
{
struct pt_regs *regs = current_pt_regs();
struct rt_sigframe __user *frame;
Expand Down
4 changes: 2 additions & 2 deletions arch/arm64/kernel/signal32.c
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ static int compat_restore_sigframe(struct pt_regs *regs,
return err;
}

asmlinkage int compat_sys_sigreturn(void)
COMPAT_SYSCALL_DEFINE0(sigreturn)
{
struct pt_regs *regs = current_pt_regs();
struct compat_sigframe __user *frame;
Expand Down Expand Up @@ -316,7 +316,7 @@ asmlinkage int compat_sys_sigreturn(void)
return 0;
}

asmlinkage int compat_sys_rt_sigreturn(void)
COMPAT_SYSCALL_DEFINE0(rt_sigreturn)
{
struct pt_regs *regs = current_pt_regs();
struct compat_rt_sigframe __user *frame;
Expand Down

0 comments on commit bf4ce5c

Please sign in to comment.