diff options
-rw-r--r-- | libc/sysdeps/linux/ia64/vfork.S | 9 | ||||
-rw-r--r-- | libc/sysdeps/linux/x86_64/clone.S | 5 |
2 files changed, 9 insertions, 5 deletions
diff --git a/libc/sysdeps/linux/ia64/vfork.S b/libc/sysdeps/linux/ia64/vfork.S index c9d485b5d..d100443b7 100644 --- a/libc/sysdeps/linux/ia64/vfork.S +++ b/libc/sysdeps/linux/ia64/vfork.S @@ -20,8 +20,11 @@ #include "sysdep.h" #define _SIGNAL_H #include <bits/signum.h> -#define _SCHED_H -#include <bits/sched.h> + +/* The following are defined in linux/sched.h, which unfortunately */ +/* is not safe for inclusion in an assembly file. */ +#define CLONE_VM 0x00000100 /* set if VM shared between processes */ +#define CLONE_VFORK 0x00004000 /* set if the parent wants the child to wake it up on mm_release */ /* pid_t vfork(void); */ /* Implemented as __clone_syscall(CLONE_VFORK | CLONE_VM | SIGCHLD, 0) */ @@ -36,6 +39,6 @@ ENTRY(__vfork) (p6) br.cond.spnt.few __syscall_error ret PSEUDO_END(__vfork) +libc_hidden_weak (vfork) weak_alias (__vfork, vfork) -libc_hidden_weak (vfork) diff --git a/libc/sysdeps/linux/x86_64/clone.S b/libc/sysdeps/linux/x86_64/clone.S index 2dc9a502c..b93c2d9a4 100644 --- a/libc/sysdeps/linux/x86_64/clone.S +++ b/libc/sysdeps/linux/x86_64/clone.S @@ -23,8 +23,9 @@ #define _ERRNO_H 1 #include <bits/errno.h> #include <sys/syscall.h> -#define _SCHED_H -#include <bits/sched.h> + +#define CLONE_VM 0x00000100 +#define CLONE_THREAD 0x00010000 /* The userland implementation is: int clone (int (*fn)(void *arg), void *child_stack, int flags, void *arg), |