mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 13:14:07 +08:00
powerpc/syscalls: Use sys_old_select() in ppc_select()
Instead of opencodying the copy of parameters, use the generic sys_old_select(). Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/4de983ad254739da1fe6e9f273baf387b7043ae0.1615398498.git.christophe.leroy@csgroup.eu
This commit is contained in:
parent
4b8cda5881
commit
fd69d544b0
@ -40,6 +40,7 @@
|
||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||
#ifdef CONFIG_PPC32
|
||||
#define __ARCH_WANT_OLD_STAT
|
||||
#define __ARCH_WANT_SYS_OLD_SELECT
|
||||
#endif
|
||||
#ifdef CONFIG_PPC64
|
||||
#define __ARCH_WANT_SYS_TIME
|
||||
|
@ -82,16 +82,8 @@ int
|
||||
ppc_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set __user *exp, struct __kernel_old_timeval __user *tvp)
|
||||
{
|
||||
if ( (unsigned long)n >= 4096 )
|
||||
{
|
||||
unsigned long __user *buffer = (unsigned long __user *)n;
|
||||
if (!access_ok(buffer, 5*sizeof(unsigned long))
|
||||
|| __get_user(n, buffer)
|
||||
|| __get_user(inp, ((fd_set __user * __user *)(buffer+1)))
|
||||
|| __get_user(outp, ((fd_set __user * __user *)(buffer+2)))
|
||||
|| __get_user(exp, ((fd_set __user * __user *)(buffer+3)))
|
||||
|| __get_user(tvp, ((struct __kernel_old_timeval __user * __user *)(buffer+4))))
|
||||
return -EFAULT;
|
||||
}
|
||||
return sys_old_select((void __user *)n);
|
||||
|
||||
return sys_select(n, inp, outp, exp, tvp);
|
||||
}
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user