xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/prctl.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _LINUX_PRCTL_H
8*8d67ca89SAndroid Build Coastguard Worker #define _LINUX_PRCTL_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_PDEATHSIG 1
11*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_PDEATHSIG 2
12*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_DUMPABLE 3
13*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_DUMPABLE 4
14*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_UNALIGN 5
15*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_UNALIGN 6
16*8d67ca89SAndroid Build Coastguard Worker #define PR_UNALIGN_NOPRINT 1
17*8d67ca89SAndroid Build Coastguard Worker #define PR_UNALIGN_SIGBUS 2
18*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_KEEPCAPS 7
19*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_KEEPCAPS 8
20*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_FPEMU 9
21*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_FPEMU 10
22*8d67ca89SAndroid Build Coastguard Worker #define PR_FPEMU_NOPRINT 1
23*8d67ca89SAndroid Build Coastguard Worker #define PR_FPEMU_SIGFPE 2
24*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_FPEXC 11
25*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_FPEXC 12
26*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_SW_ENABLE 0x80
27*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_DIV 0x010000
28*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_OVF 0x020000
29*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_UND 0x040000
30*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_RES 0x080000
31*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_INV 0x100000
32*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_DISABLED 0
33*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_NONRECOV 1
34*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_ASYNC 2
35*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_EXC_PRECISE 3
36*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_TIMING 13
37*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_TIMING 14
38*8d67ca89SAndroid Build Coastguard Worker #define PR_TIMING_STATISTICAL 0
39*8d67ca89SAndroid Build Coastguard Worker #define PR_TIMING_TIMESTAMP 1
40*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_NAME 15
41*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_NAME 16
42*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_ENDIAN 19
43*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_ENDIAN 20
44*8d67ca89SAndroid Build Coastguard Worker #define PR_ENDIAN_BIG 0
45*8d67ca89SAndroid Build Coastguard Worker #define PR_ENDIAN_LITTLE 1
46*8d67ca89SAndroid Build Coastguard Worker #define PR_ENDIAN_PPC_LITTLE 2
47*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_SECCOMP 21
48*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_SECCOMP 22
49*8d67ca89SAndroid Build Coastguard Worker #define PR_CAPBSET_READ 23
50*8d67ca89SAndroid Build Coastguard Worker #define PR_CAPBSET_DROP 24
51*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_TSC 25
52*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_TSC 26
53*8d67ca89SAndroid Build Coastguard Worker #define PR_TSC_ENABLE 1
54*8d67ca89SAndroid Build Coastguard Worker #define PR_TSC_SIGSEGV 2
55*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_SECUREBITS 27
56*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_SECUREBITS 28
57*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_TIMERSLACK 29
58*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_TIMERSLACK 30
59*8d67ca89SAndroid Build Coastguard Worker #define PR_TASK_PERF_EVENTS_DISABLE 31
60*8d67ca89SAndroid Build Coastguard Worker #define PR_TASK_PERF_EVENTS_ENABLE 32
61*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL 33
62*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_CLEAR 0
63*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_SET 1
64*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_LATE 0
65*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_EARLY 1
66*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_DEFAULT 2
67*8d67ca89SAndroid Build Coastguard Worker #define PR_MCE_KILL_GET 34
68*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM 35
69*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_START_CODE 1
70*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_END_CODE 2
71*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_START_DATA 3
72*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_END_DATA 4
73*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_START_STACK 5
74*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_START_BRK 6
75*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_BRK 7
76*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_ARG_START 8
77*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_ARG_END 9
78*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_ENV_START 10
79*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_ENV_END 11
80*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_AUXV 12
81*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_EXE_FILE 13
82*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_MAP 14
83*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MM_MAP_SIZE 15
84*8d67ca89SAndroid Build Coastguard Worker struct prctl_mm_map {
85*8d67ca89SAndroid Build Coastguard Worker   __u64 start_code;
86*8d67ca89SAndroid Build Coastguard Worker   __u64 end_code;
87*8d67ca89SAndroid Build Coastguard Worker   __u64 start_data;
88*8d67ca89SAndroid Build Coastguard Worker   __u64 end_data;
89*8d67ca89SAndroid Build Coastguard Worker   __u64 start_brk;
90*8d67ca89SAndroid Build Coastguard Worker   __u64 brk;
91*8d67ca89SAndroid Build Coastguard Worker   __u64 start_stack;
92*8d67ca89SAndroid Build Coastguard Worker   __u64 arg_start;
93*8d67ca89SAndroid Build Coastguard Worker   __u64 arg_end;
94*8d67ca89SAndroid Build Coastguard Worker   __u64 env_start;
95*8d67ca89SAndroid Build Coastguard Worker   __u64 env_end;
96*8d67ca89SAndroid Build Coastguard Worker   __u64 * auxv;
97*8d67ca89SAndroid Build Coastguard Worker   __u32 auxv_size;
98*8d67ca89SAndroid Build Coastguard Worker   __u32 exe_fd;
99*8d67ca89SAndroid Build Coastguard Worker };
100*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_PTRACER 0x59616d61
101*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_PTRACER_ANY ((unsigned long) - 1)
102*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_CHILD_SUBREAPER 36
103*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_CHILD_SUBREAPER 37
104*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_NO_NEW_PRIVS 38
105*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_NO_NEW_PRIVS 39
106*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_TID_ADDRESS 40
107*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_THP_DISABLE 41
108*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_THP_DISABLE 42
109*8d67ca89SAndroid Build Coastguard Worker #define PR_MPX_ENABLE_MANAGEMENT 43
110*8d67ca89SAndroid Build Coastguard Worker #define PR_MPX_DISABLE_MANAGEMENT 44
111*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_FP_MODE 45
112*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_FP_MODE 46
113*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_MODE_FR (1 << 0)
114*8d67ca89SAndroid Build Coastguard Worker #define PR_FP_MODE_FRE (1 << 1)
115*8d67ca89SAndroid Build Coastguard Worker #define PR_CAP_AMBIENT 47
116*8d67ca89SAndroid Build Coastguard Worker #define PR_CAP_AMBIENT_IS_SET 1
117*8d67ca89SAndroid Build Coastguard Worker #define PR_CAP_AMBIENT_RAISE 2
118*8d67ca89SAndroid Build Coastguard Worker #define PR_CAP_AMBIENT_LOWER 3
119*8d67ca89SAndroid Build Coastguard Worker #define PR_CAP_AMBIENT_CLEAR_ALL 4
120*8d67ca89SAndroid Build Coastguard Worker #define PR_SVE_SET_VL 50
121*8d67ca89SAndroid Build Coastguard Worker #define PR_SVE_SET_VL_ONEXEC (1 << 18)
122*8d67ca89SAndroid Build Coastguard Worker #define PR_SVE_GET_VL 51
123*8d67ca89SAndroid Build Coastguard Worker #define PR_SVE_VL_LEN_MASK 0xffff
124*8d67ca89SAndroid Build Coastguard Worker #define PR_SVE_VL_INHERIT (1 << 17)
125*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_SPECULATION_CTRL 52
126*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_SPECULATION_CTRL 53
127*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_STORE_BYPASS 0
128*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_INDIRECT_BRANCH 1
129*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_L1D_FLUSH 2
130*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_NOT_AFFECTED 0
131*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_PRCTL (1UL << 0)
132*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_ENABLE (1UL << 1)
133*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_DISABLE (1UL << 2)
134*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_FORCE_DISABLE (1UL << 3)
135*8d67ca89SAndroid Build Coastguard Worker #define PR_SPEC_DISABLE_NOEXEC (1UL << 4)
136*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_RESET_KEYS 54
137*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_APIAKEY (1UL << 0)
138*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_APIBKEY (1UL << 1)
139*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_APDAKEY (1UL << 2)
140*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_APDBKEY (1UL << 3)
141*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_APGAKEY (1UL << 4)
142*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_TAGGED_ADDR_CTRL 55
143*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_TAGGED_ADDR_CTRL 56
144*8d67ca89SAndroid Build Coastguard Worker #define PR_TAGGED_ADDR_ENABLE (1UL << 0)
145*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TCF_NONE 0UL
146*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TCF_SYNC (1UL << 1)
147*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TCF_ASYNC (1UL << 2)
148*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TCF_MASK (PR_MTE_TCF_SYNC | PR_MTE_TCF_ASYNC)
149*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TAG_SHIFT 3
150*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TAG_MASK (0xffffUL << PR_MTE_TAG_SHIFT)
151*8d67ca89SAndroid Build Coastguard Worker #define PR_MTE_TCF_SHIFT 1
152*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_IO_FLUSHER 57
153*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_IO_FLUSHER 58
154*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_SYSCALL_USER_DISPATCH 59
155*8d67ca89SAndroid Build Coastguard Worker #define PR_SYS_DISPATCH_OFF 0
156*8d67ca89SAndroid Build Coastguard Worker #define PR_SYS_DISPATCH_ON 1
157*8d67ca89SAndroid Build Coastguard Worker #define SYSCALL_DISPATCH_FILTER_ALLOW 0
158*8d67ca89SAndroid Build Coastguard Worker #define SYSCALL_DISPATCH_FILTER_BLOCK 1
159*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_SET_ENABLED_KEYS 60
160*8d67ca89SAndroid Build Coastguard Worker #define PR_PAC_GET_ENABLED_KEYS 61
161*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE 62
162*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_GET 0
163*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_CREATE 1
164*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_SHARE_TO 2
165*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_SHARE_FROM 3
166*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_MAX 4
167*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_SCOPE_THREAD 0
168*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_SCOPE_THREAD_GROUP 1
169*8d67ca89SAndroid Build Coastguard Worker #define PR_SCHED_CORE_SCOPE_PROCESS_GROUP 2
170*8d67ca89SAndroid Build Coastguard Worker #define PR_SME_SET_VL 63
171*8d67ca89SAndroid Build Coastguard Worker #define PR_SME_SET_VL_ONEXEC (1 << 18)
172*8d67ca89SAndroid Build Coastguard Worker #define PR_SME_GET_VL 64
173*8d67ca89SAndroid Build Coastguard Worker #define PR_SME_VL_LEN_MASK 0xffff
174*8d67ca89SAndroid Build Coastguard Worker #define PR_SME_VL_INHERIT (1 << 17)
175*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MDWE 65
176*8d67ca89SAndroid Build Coastguard Worker #define PR_MDWE_REFUSE_EXEC_GAIN (1UL << 0)
177*8d67ca89SAndroid Build Coastguard Worker #define PR_MDWE_NO_INHERIT (1UL << 1)
178*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_MDWE 66
179*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_VMA 0x53564d41
180*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_VMA_ANON_NAME 0
181*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_AUXV 0x41555856
182*8d67ca89SAndroid Build Coastguard Worker #define PR_SET_MEMORY_MERGE 67
183*8d67ca89SAndroid Build Coastguard Worker #define PR_GET_MEMORY_MERGE 68
184*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_SET_CONTROL 69
185*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_GET_CONTROL 70
186*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_DEFAULT 0
187*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_OFF 1
188*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_ON 2
189*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_INHERIT (1 << 4)
190*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_CUR_MASK 0x3
191*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_NEXT_MASK 0xc
192*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_V_VSTATE_CTRL_MASK 0x1f
193*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_SET_ICACHE_FLUSH_CTX 71
194*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_CTX_SW_FENCEI_ON 0
195*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_CTX_SW_FENCEI_OFF 1
196*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_SCOPE_PER_PROCESS 0
197*8d67ca89SAndroid Build Coastguard Worker #define PR_RISCV_SCOPE_PER_THREAD 1
198*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_GET_DEXCR 72
199*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_SET_DEXCR 73
200*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_SBHE 0
201*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_IBRTPD 1
202*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_SRAPD 2
203*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_NPHIE 3
204*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_EDITABLE 0x1
205*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_SET 0x2
206*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_CLEAR 0x4
207*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_SET_ONEXEC 0x8
208*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_CLEAR_ONEXEC 0x10
209*8d67ca89SAndroid Build Coastguard Worker #define PR_PPC_DEXCR_CTRL_MASK 0x1f
210*8d67ca89SAndroid Build Coastguard Worker #endif
211