diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-10-27 02:15:39 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-10-27 02:15:39 +0000 |
commit | a0fc4c5c106b10039b3ce9a3c552587677b060db (patch) | |
tree | 0baf0279b1f9c92ce67b591bf96f02ed3aa1d4dc /arch/mips/kernel/signal.c | |
parent | be2f2eb3544beda4cbc837e2b62812c7cde9c952 (diff) |
Fix register corruption bug. Credits for forward porting this patch
go to Jun Sun Industries :-)
Diffstat (limited to 'arch/mips/kernel/signal.c')
-rw-r--r-- | arch/mips/kernel/signal.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c index ad66fcb6c..ac4706dcd 100644 --- a/arch/mips/kernel/signal.c +++ b/arch/mips/kernel/signal.c @@ -76,12 +76,12 @@ int copy_siginfo_to_user(siginfo_t *to, siginfo_t *from) /* * Atomically swap in the new signal mask, and wait for a signal. */ -asmlinkage inline int -sys_sigsuspend(struct pt_regs regs) +save_static_function(sys_sigsuspend); +static unused int +_sys_sigsuspend(struct pt_regs regs) { sigset_t *uset, saveset, newset; - save_static(®s); uset = (sigset_t *) regs.regs[4]; if (copy_from_user(&newset, uset, sizeof(sigset_t))) return -EFAULT; @@ -103,14 +103,14 @@ sys_sigsuspend(struct pt_regs regs) } } -asmlinkage int -sys_rt_sigsuspend(struct pt_regs regs) + +save_static_function(sys_rt_sigsuspend); +static unused int +_sys_rt_sigsuspend(struct pt_regs regs) { sigset_t *unewset, saveset, newset; size_t sigsetsize; - save_static(®s); - /* XXX Don't preclude handling different sized sigset_t's. */ sigsetsize = regs.regs[5]; if (sigsetsize != sizeof(sigset_t)) |