|
@@ -33,8 +33,8 @@ int kernel_execve(const char *filename,
|
|
|
const char *const envp[])
|
|
|
{
|
|
|
long __res;
|
|
|
- asm volatile ("push %%ebx ; movl %2,%%ebx ; int $0x80 ; pop %%ebx"
|
|
|
+ asm volatile ("int $0x80"
|
|
|
: "=a" (__res)
|
|
|
- : "0" (__NR_execve), "ri" (filename), "c" (argv), "d" (envp) : "memory");
|
|
|
+ : "0" (__NR_execve), "b" (filename), "c" (argv), "d" (envp) : "memory");
|
|
|
return __res;
|
|
|
}
|