fork & execve return EOPNOTSUPP (temporary hack)
This commit is contained in:
@@ -43,6 +43,7 @@ SYSCALL_HANDLED(24, sched_yield)
|
|||||||
SYSCALL_HANDLED(28, madvise)
|
SYSCALL_HANDLED(28, madvise)
|
||||||
SYSCALL_HANDLED(39, getpid)
|
SYSCALL_HANDLED(39, getpid)
|
||||||
SYSCALL_HANDLED(56, clone)
|
SYSCALL_HANDLED(56, clone)
|
||||||
|
SYSCALL_HANDLED(59, execve)
|
||||||
SYSCALL_HANDLED(60, exit)
|
SYSCALL_HANDLED(60, exit)
|
||||||
SYSCALL_HANDLED(62, kill)
|
SYSCALL_HANDLED(62, kill)
|
||||||
SYSCALL_DELEGATED(63, uname)
|
SYSCALL_DELEGATED(63, uname)
|
||||||
|
|||||||
@@ -922,13 +922,22 @@ SYSCALL_DECLARE(arch_prctl)
|
|||||||
ihk_mc_syscall_arg1(ctx));
|
ihk_mc_syscall_arg1(ctx));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SYSCALL_DECLARE(execve)
|
||||||
|
{
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
}
|
||||||
|
|
||||||
SYSCALL_DECLARE(clone)
|
SYSCALL_DECLARE(clone)
|
||||||
{
|
{
|
||||||
int cpuid;
|
int cpuid;
|
||||||
int clone_flags = ihk_mc_syscall_arg0(ctx);
|
int clone_flags = ihk_mc_syscall_arg0(ctx);
|
||||||
struct process *new;
|
struct process *new;
|
||||||
|
|
||||||
|
if(clone_flags == 0x1200011){
|
||||||
|
// fork()
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
}
|
||||||
|
|
||||||
dkprintf("[%d] clone(): stack_pointr: 0x%lX\n",
|
dkprintf("[%d] clone(): stack_pointr: 0x%lX\n",
|
||||||
ihk_mc_get_processor_id(),
|
ihk_mc_get_processor_id(),
|
||||||
(unsigned long)ihk_mc_syscall_arg1(ctx));
|
(unsigned long)ihk_mc_syscall_arg1(ctx));
|
||||||
|
|||||||
Reference in New Issue
Block a user