diff options
Diffstat (limited to 'arch/frv/kernel/sys_frv.c')
| -rw-r--r-- | arch/frv/kernel/sys_frv.c | 89 | 
1 files changed, 0 insertions, 89 deletions
diff --git a/arch/frv/kernel/sys_frv.c b/arch/frv/kernel/sys_frv.c index 1d3d4c9e252..9c4980825bb 100644 --- a/arch/frv/kernel/sys_frv.c +++ b/arch/frv/kernel/sys_frv.c @@ -42,92 +42,3 @@ asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,  	return sys_mmap_pgoff(addr, len, prot, flags, fd,  			      pgoff >> (PAGE_SHIFT - 12));  } - -/* - * sys_ipc() is the de-multiplexer for the SysV IPC calls.. - * - * This is really horribly ugly. - */ -asmlinkage long sys_ipc(unsigned long call, -			unsigned long first, -			unsigned long second, -			unsigned long third, -			void __user *ptr, -			unsigned 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 *) 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: { -			ulong raddr; -			ret = do_shmat (first, (char __user *) ptr, second, &raddr); -			if (ret) -				return ret; -			return put_user (raddr, (ulong __user *) third); -		} -		case 1:	/* iBCS2 emulator entry point */ -			if (!segment_eq(get_fs(), get_ds())) -				return -EINVAL; -			/* The "(ulong *) third" is valid _only_ because of the kernel segment thing */ -			return do_shmat (first, (char __user *) ptr, second, (ulong *) 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; -	} -}  |