merge compat sys_ipc instances
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -119,75 +119,6 @@ SYSCALL_DEFINE6(32_pwrite, unsigned int, fd, const char __user *, buf,
|
||||
return sys_pwrite64(fd, buf, count, merge_64(a4, a5));
|
||||
}
|
||||
|
||||
#ifdef CONFIG_SYSVIPC
|
||||
|
||||
SYSCALL_DEFINE6(32_ipc, u32, call, long, first, long, second, long, third,
|
||||
unsigned long, ptr, unsigned long, fifth)
|
||||
{
|
||||
int version, err;
|
||||
|
||||
version = call >> 16; /* hack for backward compatibility */
|
||||
call &= 0xffff;
|
||||
|
||||
switch (call) {
|
||||
case SEMOP:
|
||||
/* struct sembuf is the same on 32 and 64bit :)) */
|
||||
err = sys_semtimedop(first, compat_ptr(ptr), second, NULL);
|
||||
break;
|
||||
case SEMTIMEDOP:
|
||||
err = compat_sys_semtimedop(first, compat_ptr(ptr), second,
|
||||
compat_ptr(fifth));
|
||||
break;
|
||||
case SEMGET:
|
||||
err = sys_semget(first, second, third);
|
||||
break;
|
||||
case SEMCTL:
|
||||
err = compat_sys_semctl(first, second, third, compat_ptr(ptr));
|
||||
break;
|
||||
case MSGSND:
|
||||
err = compat_sys_msgsnd(first, second, third, compat_ptr(ptr));
|
||||
break;
|
||||
case MSGRCV:
|
||||
err = compat_sys_msgrcv(first, second, fifth, third,
|
||||
version, compat_ptr(ptr));
|
||||
break;
|
||||
case MSGGET:
|
||||
err = sys_msgget((key_t) first, second);
|
||||
break;
|
||||
case MSGCTL:
|
||||
err = compat_sys_msgctl(first, second, compat_ptr(ptr));
|
||||
break;
|
||||
case SHMAT:
|
||||
err = compat_sys_shmat(first, second, third, version,
|
||||
compat_ptr(ptr));
|
||||
break;
|
||||
case SHMDT:
|
||||
err = sys_shmdt(compat_ptr(ptr));
|
||||
break;
|
||||
case SHMGET:
|
||||
err = sys_shmget(first, (unsigned)second, third);
|
||||
break;
|
||||
case SHMCTL:
|
||||
err = compat_sys_shmctl(first, second, compat_ptr(ptr));
|
||||
break;
|
||||
default:
|
||||
err = -EINVAL;
|
||||
break;
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
SYSCALL_DEFINE6(32_ipc, u32, call, int, first, int, second, int, third,
|
||||
u32, ptr, u32, fifth)
|
||||
{
|
||||
return -ENOSYS;
|
||||
}
|
||||
|
||||
#endif /* CONFIG_SYSVIPC */
|
||||
|
||||
#ifdef CONFIG_MIPS32_N32
|
||||
SYSCALL_DEFINE4(n32_semctl, int, semid, int, semnum, int, cmd, u32, arg)
|
||||
{
|
||||
|
@@ -309,7 +309,7 @@ sys_call_table:
|
||||
PTR compat_sys_wait4
|
||||
PTR sys_swapoff /* 4115 */
|
||||
PTR compat_sys_sysinfo
|
||||
PTR sys_32_ipc
|
||||
PTR compat_sys_ipc
|
||||
PTR sys_fsync
|
||||
PTR sys32_sigreturn
|
||||
PTR __sys_clone /* 4120 */
|
||||
|
Reference in New Issue
Block a user