8 #include <linux/compiler.h>
10 #include <linux/errno.h>
13 #include <linux/resource.h>
15 #include <linux/time.h>
17 #include <linux/poll.h>
19 #include <linux/filter.h>
20 #include <linux/shm.h>
21 #include <linux/sem.h>
22 #include <linux/msg.h>
23 #include <linux/icmpv6.h>
25 #include <linux/sysctl.h>
27 #include <linux/utsname.h>
28 #include <linux/personality.h>
30 #include <linux/module.h>
31 #include <linux/binfmts.h>
35 #include <linux/ipc.h>
36 #include <linux/slab.h>
43 #include <asm/uaccess.h>
44 #include <asm/mmu_context.h>
55 #define A(__x) ((unsigned long)(__x))
56 #define AA(__x) ((unsigned long)((int)__x))
59 #define merge_64(r1, r2) ((((r1) & 0xffffffffUL) << 32) + ((r2) & 0xffffffffUL))
62 #define merge_64(r1, r2) ((((r2) & 0xffffffffUL) << 32) + ((r1) & 0xffffffffUL))
66 unsigned long, prot,
unsigned long,
flags,
unsigned long,
fd,
88 filename =
getname(compat_ptr(regs.regs[4]));
89 error = PTR_ERR(filename);
92 error = compat_do_execve(filename->
name, compat_ptr(regs.regs[5]),
93 compat_ptr(regs.regs[6]), ®s);
100 #define RLIM_INFINITY32 0x7fffffff
101 #define RESOURCE32(x) ((x > RLIM_INFINITY32) ? RLIM_INFINITY32 : x)
109 unsigned long, __dummy,
unsigned long,
a2,
unsigned long,
a3)
115 unsigned long,
a2,
unsigned long,
a3)
132 unsigned long,
unused,
unsigned long,
a4,
unsigned long,
a5)
159 #ifdef CONFIG_SYSVIPC
162 unsigned long,
ptr,
unsigned long, fifth)
166 version = call >> 16;
189 version, compat_ptr(
ptr));
228 #ifdef CONFIG_MIPS32_N32
245 int, msgtyp,
int, msgflg)
293 unsigned long a2,
unsigned long a3,
294 unsigned long a4,
unsigned long a5,
298 merge_64(a2, a3), merge_64(a4, a5),
303 unsigned long a2,
unsigned long a3,
304 unsigned long a4,
unsigned long a5,
308 merge_64(a2, a3), merge_64(a4, a5),
313 unsigned offset_a3,
unsigned len_a4,
unsigned len_a5)
315 return sys_fallocate(fd, mode, merge_64(offset_a2, offset_a3),
316 merge_64(len_a4, len_a5));
323 unsigned long clone_flags;
325 int __user *parent_tidptr, *child_tidptr;
327 clone_flags = regs.regs[4];
328 newsp = regs.regs[5];
330 newsp = regs.regs[29];
331 parent_tidptr = (
int __user *) regs.regs[6];
335 child_tidptr = (
int __user *) __dummy4;
336 return do_fork(clone_flags, newsp, ®s, 0,
337 parent_tidptr, child_tidptr);