clone: move definitions of cloning flags to xlat/

* clone.c: Include <sched.h>.  Move definitions of CLONE_* flags ...
* xlat/clone_flags.in: ... here.
This commit is contained in:
Дмитрий Левин 2015-06-17 18:36:53 +00:00
parent cf7ee30c6b
commit 14f4038ad7
2 changed files with 28 additions and 50 deletions

32
clone.c
View File

@ -1,32 +1,10 @@
#include "defs.h"
/* defines copied from linux/sched.h since we can't include that
* ourselves (it conflicts with *lots* of libc includes)
*/
#define CSIGNAL 0x000000ff /* signal mask to be sent at exit */
#define CLONE_VM 0x00000100 /* set if VM shared between processes */
#define CLONE_FS 0x00000200 /* set if fs info shared between processes */
#define CLONE_FILES 0x00000400 /* set if open files shared between processes */
#define CLONE_SIGHAND 0x00000800 /* set if signal handlers shared */
#define CLONE_IDLETASK 0x00001000 /* kernel-only flag */
#define CLONE_PTRACE 0x00002000 /* set if we want to let tracing continue on the child too */
#define CLONE_VFORK 0x00004000 /* set if the parent wants the child to wake it up on mm_release */
#define CLONE_PARENT 0x00008000 /* set if we want to have the same parent as the cloner */
#define CLONE_THREAD 0x00010000 /* Same thread group? */
#define CLONE_NEWNS 0x00020000 /* New namespace group? */
#define CLONE_SYSVSEM 0x00040000 /* share system V SEM_UNDO semantics */
#define CLONE_SETTLS 0x00080000 /* create a new TLS for the child */
#define CLONE_PARENT_SETTID 0x00100000 /* set the TID in the parent */
#define CLONE_CHILD_CLEARTID 0x00200000 /* clear the TID in the child */
#define CLONE_UNTRACED 0x00800000 /* set if the tracing process can't force CLONE_PTRACE on this clone */
#define CLONE_CHILD_SETTID 0x01000000 /* set the TID in the child */
#define CLONE_STOPPED 0x02000000 /* Start in stopped state */
#define CLONE_NEWUTS 0x04000000 /* New utsname group? */
#define CLONE_NEWIPC 0x08000000 /* New ipcs */
#define CLONE_NEWUSER 0x10000000 /* New user namespace */
#define CLONE_NEWPID 0x20000000 /* New pid namespace */
#define CLONE_NEWNET 0x40000000 /* New network namespace */
#define CLONE_IO 0x80000000 /* Clone io context */
#include <sched.h>
#ifndef CSIGNAL
# define CSIGNAL 0x000000ff
#endif
#include "xlat/clone_flags.h"

View File

@ -1,23 +1,23 @@
CLONE_VM
CLONE_FS
CLONE_FILES
CLONE_SIGHAND
CLONE_IDLETASK
CLONE_PTRACE
CLONE_VFORK
CLONE_PARENT
CLONE_THREAD
CLONE_NEWNS
CLONE_SYSVSEM
CLONE_SETTLS
CLONE_PARENT_SETTID
CLONE_CHILD_CLEARTID
CLONE_UNTRACED
CLONE_CHILD_SETTID
CLONE_STOPPED
CLONE_NEWUTS
CLONE_NEWIPC
CLONE_NEWUSER
CLONE_NEWPID
CLONE_NEWNET
CLONE_IO
CLONE_VM 0x00000100
CLONE_FS 0x00000200
CLONE_FILES 0x00000400
CLONE_SIGHAND 0x00000800
CLONE_IDLETASK 0x00001000
CLONE_PTRACE 0x00002000
CLONE_VFORK 0x00004000
CLONE_PARENT 0x00008000
CLONE_THREAD 0x00010000
CLONE_NEWNS 0x00020000
CLONE_SYSVSEM 0x00040000
CLONE_SETTLS 0x00080000
CLONE_PARENT_SETTID 0x00100000
CLONE_CHILD_CLEARTID 0x00200000
CLONE_UNTRACED 0x00800000
CLONE_CHILD_SETTID 0x01000000
CLONE_STOPPED 0x02000000
CLONE_NEWUTS 0x04000000
CLONE_NEWIPC 0x08000000
CLONE_NEWUSER 0x10000000
CLONE_NEWPID 0x20000000
CLONE_NEWNET 0x40000000
CLONE_IO 0x80000000