diff options
author | Joseph Myers <joseph@codesourcery.com> | 2021-02-08 22:47:04 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2021-02-08 22:47:04 +0000 |
commit | 0ff786226c03456bef332950ecf51793205a4f5d (patch) | |
tree | 5f9babac61dd0d4fabc251c31972b1d8d3f93bf3 /sysdeps | |
parent | a00e2fe3dfd3a4e218ba6c1c3445ee68322ddda9 (diff) | |
download | glibc-0ff786226c03456bef332950ecf51793205a4f5d.tar.gz |
Add more ptrace constants for AArch64 and PowerPC.
Linux 5.10 adds PTRACE_PEEKMTETAGS and PTRACE_POKEMTETAGS for AArch64.
Adding those shows up that glibc is also missing PTRACE_SYSEMU and
PTRACE_SYSEMU_SINGLESTEP, for AArch64 (where they were added to Linux
in 5.3) and for PowerPC (where they were added in Linux 4.20); it
already has those two defines for x86. Add all those defines to
glibc's headers.
Tested with build-many-glibcs.py for aarch64-linux-gnu and
powerpc-linux-gnu.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h | 16 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h | 10 |
2 files changed, 26 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h index 806178af0e..de26da0023 100644 --- a/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h +++ b/sysdeps/unix/sysv/linux/aarch64/sys/ptrace.h @@ -82,6 +82,22 @@ enum __ptrace_request PTRACE_SYSCALL = 24, #define PT_SYSCALL PTRACE_SYSCALL + /* Continue and stop at the next syscall, it will not be executed. */ + PTRACE_SYSEMU = 31, +#define PT_SYSEMU PTRACE_SYSEMU + + /* Single step the process, the next syscall will not be executed. */ + PTRACE_SYSEMU_SINGLESTEP = 32, +#define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP + + /* Read MTE tags. */ + PTRACE_PEEKMTETAGS = 33, +#define PT_PEEKMTETAGS PTRACE_PEEKMTETAGS + + /* Write MTE tags. */ + PTRACE_POKEMTETAGS = 34, +#define PT_POKEMTETAGS PTRACE_POKEMTETAGS + /* Set ptrace filter options. */ PTRACE_SETOPTIONS = 0x4200, #define PT_SETOPTIONS PTRACE_SETOPTIONS diff --git a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h index 00730cf5d3..032c91e817 100644 --- a/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h +++ b/sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h @@ -70,6 +70,8 @@ __BEGIN_DECLS # undef PTRACE_SYSCALL_INFO_ENTRY # undef PTRACE_SYSCALL_INFO_EXIT # undef PTRACE_SYSCALL_INFO_SECCOMP +# undef PTRACE_SYSEMU +# undef PTRACE_SYSEMU_SINGLESTEP # undef PTRACE_TRACEME #endif @@ -188,6 +190,14 @@ enum __ptrace_request PTRACE_SETVSRREGS = 28, #define PT_SETVSRREGS PTRACE_SETVSRREGS + /* Continue and stop at the next syscall, it will not be executed. */ + PTRACE_SYSEMU = 29, +#define PT_SYSEMU PTRACE_SYSEMU + + /* Single step the process, the next syscall will not be executed. */ + PTRACE_SYSEMU_SINGLESTEP = 30, +#define PT_SYSEMU_SINGLESTEP PTRACE_SYSEMU_SINGLESTEP + /* Execute process until next taken branch. */ PTRACE_SINGLEBLOCK = 256, #define PT_STEPBLOCK PTRACE_SINGLEBLOCK |