diff options
Diffstat (limited to 'arch/mips/kernel/syscall.c')
| -rw-r--r-- | arch/mips/kernel/syscall.c | 88 | 
1 files changed, 0 insertions, 88 deletions
diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c index 3f7f466190b..257bf014177 100644 --- a/arch/mips/kernel/syscall.c +++ b/arch/mips/kernel/syscall.c @@ -407,94 +407,6 @@ _sys_sysmips(nabi_no_regargs struct pt_regs regs)  }  /* - * sys_ipc() is the de-multiplexer for the SysV IPC calls.. - * - * This is really horribly ugly. - */ -SYSCALL_DEFINE6(ipc, unsigned int, call, int, first, int, second, -	unsigned long, third, void __user *, ptr, long, fifth) -{ -	int version, ret; - -	version = call >> 16; /* hack for backward compatibility */ -	call &= 0xffff; - -	switch (call) { -	case SEMOP: -		return sys_semtimedop(first, (struct sembuf __user *)ptr, -		                      second, NULL); -	case SEMTIMEDOP: -		return sys_semtimedop(first, (struct sembuf __user *)ptr, -				      second, -				      (const struct timespec __user *)fifth); -	case SEMGET: -		return sys_semget(first, second, third); -	case SEMCTL: { -		union semun fourth; -		if (!ptr) -			return -EINVAL; -		if (get_user(fourth.__pad, (void __user *__user *) ptr)) -			return -EFAULT; -		return sys_semctl(first, second, third, fourth); -	} - -	case MSGSND: -		return sys_msgsnd(first, (struct msgbuf __user *) ptr, -				  second, third); -	case MSGRCV: -		switch (version) { -		case 0: { -			struct ipc_kludge tmp; -			if (!ptr) -				return -EINVAL; - -			if (copy_from_user(&tmp, -					   (struct ipc_kludge __user *) ptr, -					   sizeof(tmp))) -				return -EFAULT; -			return sys_msgrcv(first, tmp.msgp, second, -					  tmp.msgtyp, third); -		} -		default: -			return sys_msgrcv(first, -					  (struct msgbuf __user *) ptr, -					  second, fifth, third); -		} -	case MSGGET: -		return sys_msgget((key_t) first, second); -	case MSGCTL: -		return sys_msgctl(first, second, -				  (struct msqid_ds __user *) ptr); - -	case SHMAT: -		switch (version) { -		default: { -			unsigned long raddr; -			ret = do_shmat(first, (char __user *) ptr, second, -				       &raddr); -			if (ret) -				return ret; -			return put_user(raddr, (unsigned long __user *) third); -		} -		case 1:	/* iBCS2 emulator entry point */ -			if (!segment_eq(get_fs(), get_ds())) -				return -EINVAL; -			return do_shmat(first, (char __user *) ptr, second, -				        (unsigned long *) third); -		} -	case SHMDT: -		return sys_shmdt((char __user *)ptr); -	case SHMGET: -		return sys_shmget(first, second, third); -	case SHMCTL: -		return sys_shmctl(first, second, -				  (struct shmid_ds __user *) ptr); -	default: -		return -ENOSYS; -	} -} - -/*   * No implemented yet ...   */  SYSCALL_DEFINE3(cachectl, char *, addr, int, nbytes, int, op)  |