Blame sysdeps/unix/sysv/linux/x86/include/asm/prctl.h

Packit Service 82fcde
/* FIXME: CET arch_prctl bits should come from the kernel header files.
Packit Service 82fcde
   This file should be removed if <asm/prctl.h> from the required kernel
Packit Service 82fcde
   header files contains CET arch_prctl bits.  */
Packit Service 82fcde
Packit Service 82fcde
#include_next <asm/prctl.h>
Packit Service 82fcde
Packit Service 82fcde
#ifndef ARCH_CET_STATUS
Packit Service 82fcde
/* CET features:
Packit Service 82fcde
   IBT:   GNU_PROPERTY_X86_FEATURE_1_IBT
Packit Service 82fcde
   SHSTK: GNU_PROPERTY_X86_FEATURE_1_SHSTK
Packit Service 82fcde
 */
Packit Service 82fcde
/* Return CET features in unsigned long long *addr:
Packit Service 82fcde
     features: addr[0].
Packit Service 82fcde
     shadow stack base address: addr[1].
Packit Service 82fcde
     shadow stack size: addr[2].
Packit Service 82fcde
 */
Packit Service 82fcde
# define ARCH_CET_STATUS	0x3001
Packit Service 82fcde
/* Disable CET features in unsigned int features.  */
Packit Service 82fcde
# define ARCH_CET_DISABLE	0x3002
Packit Service 82fcde
/* Lock all CET features.  */
Packit Service 82fcde
# define ARCH_CET_LOCK		0x3003
Packit Service 82fcde
/* Allocate a new shadow stack with unsigned long long *addr:
Packit Service 82fcde
     IN: requested shadow stack size: *addr.
Packit Service 82fcde
     OUT: allocated shadow stack address: *addr.
Packit Service 82fcde
 */
Packit Service 82fcde
# define ARCH_CET_ALLOC_SHSTK	0x3004
Packit Service 82fcde
/* Return legacy region bitmap info in unsigned long long *addr:
Packit Service 82fcde
     address: addr[0].
Packit Service 82fcde
     size: addr[1].
Packit Service 82fcde
 */
Packit Service 82fcde
# define ARCH_CET_LEGACY_BITMAP	0x3005
Packit Service 82fcde
#endif /* ARCH_CET_STATUS */