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) { |