29 #include <linux/mman.h>
30 #include <linux/module.h>
31 #include <linux/slab.h>
34 #include <asm/syscalls.h>
38 unsigned long flags,
unsigned long fd,
unsigned long pgoff)
44 sys_mmap(
unsigned long addr,
unsigned long len,
unsigned long prot,
65 unsigned long clone_flags;
67 int __user *parent_tidptr, *child_tidptr;
69 clone_flags = regs->
regs[4];
70 newsp = regs->
regs[5];
72 newsp = regs->
regs[0];
76 return do_fork(clone_flags, newsp, regs, 0,
77 parent_tidptr, child_tidptr);
98 error = PTR_ERR(filename);
117 const char *
const argv[],
118 const char *
const envp[])
120 register unsigned long __r4
asm(
"r4") = (
unsigned long)
filename;
121 register unsigned long __r5
asm(
"r5") = (
unsigned long) argv;
122 register unsigned long __r6
asm(
"r6") = (
unsigned long) envp;
123 register unsigned long __r7
asm(
"r7");
130 :
"=&r" (__r4),
"=r" (__r7)
131 :
"r" (__r4),
"r" (__r5),
"r" (__r6),
"i" (
__NR_execve)
132 :
"r8",
"r9",
"r10",
"r11",
"r22",
"r23",
"r24",
"r25",
133 "r26",
"r27",
"memory");