Print this page
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/common/brand/lx/lx_syscall.h
+++ new/usr/src/common/brand/lx/lx_syscall.h
1 1 /*
2 2 * This file and its contents are supplied under the terms of the
3 3 * Common Development and Distribution License ("CDDL"), version 1.0.
4 4 * You may only use this file in accordance with the terms of version
5 5 * 1.0 of the CDDL.
6 6 *
7 7 * A full copy of the text of the CDDL should have accompanied this
8 8 * source. A copy of the CDDL is also available via the Internet at
9 9 * http://www.illumos.org/license/CDDL.
10 10 */
11 11
12 12 /*
13 13 * Copyright 2015 Joyent, Inc.
14 14 */
15 15
16 16 #ifndef _LX_SYSCALL_H
17 17 #define _LX_SYSCALL_H
18 18
19 19 #include <sys/lx_brand.h>
20 20
21 21 #ifdef __cplusplus
22 22 extern "C" {
23 23 #endif
24 24
25 25 /*
26 26 * The br_scall_args field of lx_lwp_data is going to be populated with
27 27 * pointers to structs. The types of these structs should be defined in this
28 28 * header file. These are Linux specific arguments to system calls that don't
29 29 * exist in illumos. Each section should be labelled with which system call it
30 30 * belongs to.
31 31 */
32 32
33 33 /* arguments for waitpid(2) */
34 34 /* see comments in usr/src/lib/brand/lx/lx_brand/common/wait.c */
35 35 #define LX_WNOTHREAD 0x20000000 /* Do not wait on siblings' children */
36 36 #define LX_WALL 0x40000000 /* Wait on all children */
37 37 #define LX_WCLONE 0x80000000 /* Wait only on clone children */
38 38
39 39 /* For arch_prctl(2) */
40 40 #define LX_ARCH_SET_GS 0x1001
41 41 #define LX_ARCH_SET_FS 0x1002
42 42 #define LX_ARCH_GET_FS 0x1003
43 43 #define LX_ARCH_GET_GS 0x1004
44 44
45 45 /*
46 46 * For ptrace(2):
47 47 */
48 48 #define LX_PTRACE_TRACEME 0
49 49 #define LX_PTRACE_PEEKTEXT 1
50 50 #define LX_PTRACE_PEEKDATA 2
51 51 #define LX_PTRACE_PEEKUSER 3
52 52 #define LX_PTRACE_POKETEXT 4
53 53 #define LX_PTRACE_POKEDATA 5
54 54 #define LX_PTRACE_POKEUSER 6
55 55 #define LX_PTRACE_CONT 7
56 56 #define LX_PTRACE_KILL 8
57 57 #define LX_PTRACE_SINGLESTEP 9
58 58 #define LX_PTRACE_GETREGS 12
59 59 #define LX_PTRACE_SETREGS 13
60 60 #define LX_PTRACE_GETFPREGS 14
61 61 #define LX_PTRACE_SETFPREGS 15
62 62 #define LX_PTRACE_ATTACH 16
63 63 #define LX_PTRACE_DETACH 17
64 64 #define LX_PTRACE_GETFPXREGS 18
65 65 #define LX_PTRACE_SETFPXREGS 19
66 66 #define LX_PTRACE_SYSCALL 24
67 67 #define LX_PTRACE_SETOPTIONS 0x4200
68 68 #define LX_PTRACE_GETEVENTMSG 0x4201
69 69 #define LX_PTRACE_GETSIGINFO 0x4202
70 70
71 71 /*
72 72 * For clone(2):
73 73 */
74 74 #define LX_CSIGNAL 0x000000ff
75 75 #define LX_CLONE_VM 0x00000100
76 76 #define LX_CLONE_FS 0x00000200
77 77 #define LX_CLONE_FILES 0x00000400
78 78 #define LX_CLONE_SIGHAND 0x00000800
79 79 #define LX_CLONE_PID 0x00001000
80 80 #define LX_CLONE_PTRACE 0x00002000
81 81 #define LX_CLONE_VFORK 0x00004000
82 82 #define LX_CLONE_PARENT 0x00008000
83 83 #define LX_CLONE_THREAD 0x00010000
84 84 #define LX_CLONE_SYSVSEM 0x00040000
85 85 #define LX_CLONE_SETTLS 0x00080000
86 86 #define LX_CLONE_PARENT_SETTID 0x00100000
87 87 #define LX_CLONE_CHILD_CLEARTID 0x00200000
88 88 #define LX_CLONE_DETACH 0x00400000
89 89 #define LX_CLONE_CHILD_SETTID 0x01000000
90 90
91 91 #ifdef __cplusplus
92 92 }
93 93 #endif
94 94
95 95 #endif /* _LX_SYSCALL_H */
|
↓ open down ↓ |
95 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX