aboutsummaryrefslogtreecommitdiffstats
path: root/arch/h8300/kernel/sys_h8300.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/h8300/kernel/sys_h8300.c')
-rw-r--r--arch/h8300/kernel/sys_h8300.c88
1 files changed, 0 insertions, 88 deletions
diff --git a/arch/h8300/kernel/sys_h8300.c b/arch/h8300/kernel/sys_h8300.c
index 1f13fd6e5309..f9b3f44da69f 100644
--- a/arch/h8300/kernel/sys_h8300.c
+++ b/arch/h8300/kernel/sys_h8300.c
@@ -26,94 +26,6 @@
26#include <asm/traps.h> 26#include <asm/traps.h>
27#include <asm/unistd.h> 27#include <asm/unistd.h>
28 28
29/*
30 * sys_ipc() is the de-multiplexer for the SysV IPC calls..
31 *
32 * This is really horribly ugly.
33 */
34asmlinkage int sys_ipc (uint call, int first, int second,
35 int third, void *ptr, long fifth)
36{
37 int version, ret;
38
39 version = call >> 16; /* hack for backward compatibility */
40 call &= 0xffff;
41
42 if (call <= SEMCTL)
43 switch (call) {
44 case SEMOP:
45 return sys_semop (first, (struct sembuf *)ptr, second);
46 case SEMGET:
47 return sys_semget (first, second, third);
48 case SEMCTL: {
49 union semun fourth;
50 if (!ptr)
51 return -EINVAL;
52 if (get_user(fourth.__pad, (void **) ptr))
53 return -EFAULT;
54 return sys_semctl (first, second, third, fourth);
55 }
56 default:
57 return -EINVAL;
58 }
59 if (call <= MSGCTL)
60 switch (call) {
61 case MSGSND:
62 return sys_msgsnd (first, (struct msgbuf *) ptr,
63 second, third);
64 case MSGRCV:
65 switch (version) {
66 case 0: {
67 struct ipc_kludge tmp;
68 if (!ptr)
69 return -EINVAL;
70 if (copy_from_user (&tmp,
71 (struct ipc_kludge *)ptr,
72 sizeof (tmp)))
73 return -EFAULT;
74 return sys_msgrcv (first, tmp.msgp, second,
75 tmp.msgtyp, third);
76 }
77 default:
78 return sys_msgrcv (first,
79 (struct msgbuf *) ptr,
80 second, fifth, third);
81 }
82 case MSGGET:
83 return sys_msgget ((key_t) first, second);
84 case MSGCTL:
85 return sys_msgctl (first, second,
86 (struct msqid_ds *) ptr);
87 default:
88 return -EINVAL;
89 }
90 if (call <= SHMCTL)
91 switch (call) {
92 case SHMAT:
93 switch (version) {
94 default: {
95 ulong raddr;
96 ret = do_shmat (first, (char *) ptr,
97 second, &raddr);
98 if (ret)
99 return ret;
100 return put_user (raddr, (ulong *) third);
101 }
102 }
103 case SHMDT:
104 return sys_shmdt ((char *)ptr);
105 case SHMGET:
106 return sys_shmget (first, second, third);
107 case SHMCTL:
108 return sys_shmctl (first, second,
109 (struct shmid_ds *) ptr);
110 default:
111 return -EINVAL;
112 }
113
114 return -EINVAL;
115}
116
117/* sys_cacheflush -- no support. */ 29/* sys_cacheflush -- no support. */
118asmlinkage int 30asmlinkage int
119sys_cacheflush (unsigned long addr, int scope, int cache, unsigned long len) 31sys_cacheflush (unsigned long addr, int scope, int cache, unsigned long len)