aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/ia32/ipc32.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/ia32/ipc32.c')
-rw-r--r--arch/x86/ia32/ipc32.c30
1 files changed, 14 insertions, 16 deletions
diff --git a/arch/x86/ia32/ipc32.c b/arch/x86/ia32/ipc32.c
index 7b3342e5aab5..d21991ce606c 100644
--- a/arch/x86/ia32/ipc32.c
+++ b/arch/x86/ia32/ipc32.c
@@ -9,9 +9,8 @@
9#include <linux/ipc.h> 9#include <linux/ipc.h>
10#include <linux/compat.h> 10#include <linux/compat.h>
11 11
12asmlinkage long 12asmlinkage long sys32_ipc(u32 call, int first, int second, int third,
13sys32_ipc(u32 call, int first, int second, int third, 13 compat_uptr_t ptr, u32 fifth)
14 compat_uptr_t ptr, u32 fifth)
15{ 14{
16 int version; 15 int version;
17 16
@@ -19,36 +18,35 @@ sys32_ipc(u32 call, int first, int second, int third,
19 call &= 0xffff; 18 call &= 0xffff;
20 19
21 switch (call) { 20 switch (call) {
22 case SEMOP: 21 case SEMOP:
23 /* struct sembuf is the same on 32 and 64bit :)) */ 22 /* struct sembuf is the same on 32 and 64bit :)) */
24 return sys_semtimedop(first, compat_ptr(ptr), second, NULL); 23 return sys_semtimedop(first, compat_ptr(ptr), second, NULL);
25 case SEMTIMEDOP: 24 case SEMTIMEDOP:
26 return compat_sys_semtimedop(first, compat_ptr(ptr), second, 25 return compat_sys_semtimedop(first, compat_ptr(ptr), second,
27 compat_ptr(fifth)); 26 compat_ptr(fifth));
28 case SEMGET: 27 case SEMGET:
29 return sys_semget(first, second, third); 28 return sys_semget(first, second, third);
30 case SEMCTL: 29 case SEMCTL:
31 return compat_sys_semctl(first, second, third, compat_ptr(ptr)); 30 return compat_sys_semctl(first, second, third, compat_ptr(ptr));
32 31
33 case MSGSND: 32 case MSGSND:
34 return compat_sys_msgsnd(first, second, third, compat_ptr(ptr)); 33 return compat_sys_msgsnd(first, second, third, compat_ptr(ptr));
35 case MSGRCV: 34 case MSGRCV:
36 return compat_sys_msgrcv(first, second, fifth, third, 35 return compat_sys_msgrcv(first, second, fifth, third,
37 version, compat_ptr(ptr)); 36 version, compat_ptr(ptr));
38 case MSGGET: 37 case MSGGET:
39 return sys_msgget((key_t) first, second); 38 return sys_msgget((key_t) first, second);
40 case MSGCTL: 39 case MSGCTL:
41 return compat_sys_msgctl(first, second, compat_ptr(ptr)); 40 return compat_sys_msgctl(first, second, compat_ptr(ptr));
42 41
43 case SHMAT: 42 case SHMAT:
44 return compat_sys_shmat(first, second, third, version, 43 return compat_sys_shmat(first, second, third, version,
45 compat_ptr(ptr)); 44 compat_ptr(ptr));
46 break; 45 case SHMDT:
47 case SHMDT:
48 return sys_shmdt(compat_ptr(ptr)); 46 return sys_shmdt(compat_ptr(ptr));
49 case SHMGET: 47 case SHMGET:
50 return sys_shmget(first, (unsigned)second, third); 48 return sys_shmget(first, (unsigned)second, third);
51 case SHMCTL: 49 case SHMCTL:
52 return compat_sys_shmctl(first, second, compat_ptr(ptr)); 50 return compat_sys_shmctl(first, second, compat_ptr(ptr));
53 } 51 }
54 return -ENOSYS; 52 return -ENOSYS;