Browse Source

mips: switch to generic compat rt_sigqueueinfo()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro 12 năm trước cách đây
mục cha
commit
ea5d83db67

+ 1 - 0
arch/mips/Kconfig

@@ -42,6 +42,7 @@ config MIPS
 	select MODULES_USE_ELF_REL if MODULES
 	select MODULES_USE_ELF_RELA if MODULES && 64BIT
 	select GENERIC_SIGALTSTACK
+	select GENERIC_COMPAT_RT_SIGQUEUEINFO
 	select GENERIC_COMPAT_RT_SIGPROCMASK
 	select GENERIC_COMPAT_RT_SIGPENDING
 

+ 1 - 1
arch/mips/kernel/scall64-n32.S

@@ -231,7 +231,7 @@ EXPORT(sysn32_call_table)
 	PTR	sys_capset
 	PTR	compat_sys_rt_sigpending	/* 6125 */
 	PTR	compat_sys_rt_sigtimedwait
-	PTR	sys_32_rt_sigqueueinfo
+	PTR	compat_sys_rt_sigqueueinfo
 	PTR	compat_sys_rt_sigsuspend
 	PTR	compat_sys_sigaltstack
 	PTR	compat_sys_utime		/* 6130 */

+ 1 - 1
arch/mips/kernel/scall64-o32.S

@@ -390,7 +390,7 @@ sys_call_table:
 	PTR	compat_sys_rt_sigprocmask 	/* 4195 */
 	PTR	compat_sys_rt_sigpending
 	PTR	compat_sys_rt_sigtimedwait
-	PTR	sys_32_rt_sigqueueinfo
+	PTR	compat_sys_rt_sigqueueinfo
 	PTR	compat_sys_rt_sigsuspend
 	PTR	sys_32_pread			/* 4200 */
 	PTR	sys_32_pwrite

+ 0 - 16
arch/mips/kernel/signal32.c

@@ -614,22 +614,6 @@ out:
 	return ret;
 }
 
-SYSCALL_DEFINE3(32_rt_sigqueueinfo, int, pid, int, sig,
-	compat_siginfo_t __user *, uinfo)
-{
-	siginfo_t info;
-	int ret;
-	mm_segment_t old_fs = get_fs();
-
-	if (copy_from_user(&info, uinfo, 3*sizeof(int)) ||
-	    copy_from_user(info._sifields._pad, uinfo->_sifields._pad, SI_PAD_SIZE))
-		return -EFAULT;
-	set_fs(KERNEL_DS);
-	ret = sys_rt_sigqueueinfo(pid, sig, (siginfo_t __user *)&info);
-	set_fs(old_fs);
-	return ret;
-}
-
 static int signal32_init(void)
 {
 	if (cpu_has_fpu) {