Commit 7f145a6d by Dennis Schridde Committed by Stéphane Graber

Fix for ia64: Use __clone2 for ia64 in lxc/start.c

parent d71d919e
...@@ -564,7 +564,7 @@ static int must_drop_cap_sys_boot(void) ...@@ -564,7 +564,7 @@ static int must_drop_cap_sys_boot(void)
FILE *f = fopen("/proc/sys/kernel/ctrl-alt-del", "r"); FILE *f = fopen("/proc/sys/kernel/ctrl-alt-del", "r");
int ret, cmd, v; int ret, cmd, v;
long stack_size = 4096; long stack_size = 4096;
void *stack = alloca(stack_size) + stack_size; void *stack = alloca(stack_size);
int status; int status;
pid_t pid; pid_t pid;
...@@ -581,7 +581,12 @@ static int must_drop_cap_sys_boot(void) ...@@ -581,7 +581,12 @@ static int must_drop_cap_sys_boot(void)
} }
cmd = v ? LINUX_REBOOT_CMD_CAD_ON : LINUX_REBOOT_CMD_CAD_OFF; cmd = v ? LINUX_REBOOT_CMD_CAD_ON : LINUX_REBOOT_CMD_CAD_OFF;
#ifdef __ia64__
pid = __clone2(container_reboot_supported, stack, stack_size, CLONE_NEWPID | SIGCHLD, &cmd);
#else
stack += stack_size;
pid = clone(container_reboot_supported, stack, CLONE_NEWPID | SIGCHLD, &cmd); pid = clone(container_reboot_supported, stack, CLONE_NEWPID | SIGCHLD, &cmd);
#endif
if (pid < 0) { if (pid < 0) {
SYSERROR("failed to clone\n"); SYSERROR("failed to clone\n");
return -1; return -1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment