diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2012-12-25 15:49:15 -0500 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-02-03 18:32:59 -0500 |
| commit | ea5d83db6705e2a6d3534b169420586bdb6c5223 (patch) | |
| tree | 79917e693f441a6e012fcc670a5432e14611cefc | |
| parent | 45cb66f797cd3b892cec6d7faea449c50053410f (diff) | |
mips: switch to generic compat rt_sigqueueinfo()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| -rw-r--r-- | arch/mips/Kconfig | 1 | ||||
| -rw-r--r-- | arch/mips/kernel/scall64-n32.S | 2 | ||||
| -rw-r--r-- | arch/mips/kernel/scall64-o32.S | 2 | ||||
| -rw-r--r-- | arch/mips/kernel/signal32.c | 16 |
4 files changed, 3 insertions, 18 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 475e44c8fd2e..b1e885f31703 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
| @@ -42,6 +42,7 @@ config MIPS | |||
| 42 | select MODULES_USE_ELF_REL if MODULES | 42 | select MODULES_USE_ELF_REL if MODULES |
| 43 | select MODULES_USE_ELF_RELA if MODULES && 64BIT | 43 | select MODULES_USE_ELF_RELA if MODULES && 64BIT |
| 44 | select GENERIC_SIGALTSTACK | 44 | select GENERIC_SIGALTSTACK |
| 45 | select GENERIC_COMPAT_RT_SIGQUEUEINFO | ||
| 45 | select GENERIC_COMPAT_RT_SIGPROCMASK | 46 | select GENERIC_COMPAT_RT_SIGPROCMASK |
| 46 | select GENERIC_COMPAT_RT_SIGPENDING | 47 | select GENERIC_COMPAT_RT_SIGPENDING |
| 47 | 48 | ||
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S index 5ab549b264b7..491c389b897f 100644 --- a/arch/mips/kernel/scall64-n32.S +++ b/arch/mips/kernel/scall64-n32.S | |||
| @@ -231,7 +231,7 @@ EXPORT(sysn32_call_table) | |||
| 231 | PTR sys_capset | 231 | PTR sys_capset |
| 232 | PTR compat_sys_rt_sigpending /* 6125 */ | 232 | PTR compat_sys_rt_sigpending /* 6125 */ |
| 233 | PTR compat_sys_rt_sigtimedwait | 233 | PTR compat_sys_rt_sigtimedwait |
| 234 | PTR sys_32_rt_sigqueueinfo | 234 | PTR compat_sys_rt_sigqueueinfo |
| 235 | PTR compat_sys_rt_sigsuspend | 235 | PTR compat_sys_rt_sigsuspend |
| 236 | PTR compat_sys_sigaltstack | 236 | PTR compat_sys_sigaltstack |
| 237 | PTR compat_sys_utime /* 6130 */ | 237 | PTR compat_sys_utime /* 6130 */ |
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S index 22fd9c13f37b..8362cc831151 100644 --- a/arch/mips/kernel/scall64-o32.S +++ b/arch/mips/kernel/scall64-o32.S | |||
| @@ -390,7 +390,7 @@ sys_call_table: | |||
| 390 | PTR compat_sys_rt_sigprocmask /* 4195 */ | 390 | PTR compat_sys_rt_sigprocmask /* 4195 */ |
| 391 | PTR compat_sys_rt_sigpending | 391 | PTR compat_sys_rt_sigpending |
| 392 | PTR compat_sys_rt_sigtimedwait | 392 | PTR compat_sys_rt_sigtimedwait |
| 393 | PTR sys_32_rt_sigqueueinfo | 393 | PTR compat_sys_rt_sigqueueinfo |
| 394 | PTR compat_sys_rt_sigsuspend | 394 | PTR compat_sys_rt_sigsuspend |
| 395 | PTR sys_32_pread /* 4200 */ | 395 | PTR sys_32_pread /* 4200 */ |
| 396 | PTR sys_32_pwrite | 396 | PTR sys_32_pwrite |
diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c index a62b918d6835..b4f0e714cf37 100644 --- a/arch/mips/kernel/signal32.c +++ b/arch/mips/kernel/signal32.c | |||
| @@ -614,22 +614,6 @@ out: | |||
| 614 | return ret; | 614 | return ret; |
| 615 | } | 615 | } |
| 616 | 616 | ||
| 617 | SYSCALL_DEFINE3(32_rt_sigqueueinfo, int, pid, int, sig, | ||
| 618 | compat_siginfo_t __user *, uinfo) | ||
| 619 | { | ||
| 620 | siginfo_t info; | ||
| 621 | int ret; | ||
| 622 | mm_segment_t old_fs = get_fs(); | ||
| 623 | |||
| 624 | if (copy_from_user(&info, uinfo, 3*sizeof(int)) || | ||
| 625 | copy_from_user(info._sifields._pad, uinfo->_sifields._pad, SI_PAD_SIZE)) | ||
| 626 | return -EFAULT; | ||
| 627 | set_fs(KERNEL_DS); | ||
| 628 | ret = sys_rt_sigqueueinfo(pid, sig, (siginfo_t __user *)&info); | ||
| 629 | set_fs(old_fs); | ||
| 630 | return ret; | ||
| 631 | } | ||
| 632 | |||
| 633 | static int signal32_init(void) | 617 | static int signal32_init(void) |
| 634 | { | 618 | { |
| 635 | if (cpu_has_fpu) { | 619 | if (cpu_has_fpu) { |
