AArch64: Add MTE ptrace requests
authorLuis Machado <luis.machado@linaro.org>
Fri, 19 Jun 2020 19:09:11 +0000 (16:09 -0300)
committerLuis Machado <luis.machado@linaro.org>
Wed, 24 Mar 2021 17:53:30 +0000 (14:53 -0300)
This patch adds the required ptrace request definitions into a new include
file that will be used by the next patches.

They are PTRACE_PEEKMTETAGS and PTRACE_POKEMTETAGS.

gdb/ChangeLog:

2021-03-24  Luis Machado  <luis.machado@linaro.org>

* Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
* nat/aarch64-mte-linux-ptrace.h: New file.

gdb/ChangeLog
gdb/Makefile.in
gdb/nat/aarch64-mte-linux-ptrace.h [new file with mode: 0644]

index 866623e168a4f41a86b07ef266298e601c132a4e..bf7f19dffa27bc580fb6345c72b412b89d6fa5a1 100644 (file)
@@ -1,3 +1,8 @@
+2021-03-24  Luis Machado  <luis.machado@linaro.org>
+
+       * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
+       * nat/aarch64-mte-linux-ptrace.h: New file.
+
 2021-03-24  Luis Machado  <luis.machado@linaro.org>
 
        * aarch64-linux-nat.c (fetch_mteregs_from_thread): New function.
index 49202d4653dff2414bff7df82154422c29d25493..7943a3c0d5a6f1171f9dd1bb95eb5cc3f46b74d8 100644 (file)
@@ -1510,6 +1510,7 @@ HFILES_NO_SRCDIR = \
        mi/mi-parse.h \
        nat/aarch64-linux.h \
        nat/aarch64-linux-hw-point.h \
+       nat/aarch64-mte-linux-ptrace.h \
        nat/aarch64-sve-linux-ptrace.h \
        nat/amd64-linux-siginfo.h \
        nat/gdb_ptrace.h \
diff --git a/gdb/nat/aarch64-mte-linux-ptrace.h b/gdb/nat/aarch64-mte-linux-ptrace.h
new file mode 100644 (file)
index 0000000..65ac141
--- /dev/null
@@ -0,0 +1,33 @@
+/* Common native Linux definitions for AArch64 MTE.
+
+   Copyright (C) 2021 Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef NAT_AARCH64_MTE_LINUX_PTRACE_H
+#define NAT_AARCH64_MTE_LINUX_PTRACE_H
+
+/* MTE allocation tag access */
+
+#ifndef PTRACE_PEEKMTETAGS
+#define PTRACE_PEEKMTETAGS       33
+#endif
+
+#ifndef PTRACE_POKEMTETAGS
+#define PTRACE_POKEMTETAGS       34
+#endif
+
+#endif /* NAT_AARCH64_MTE_LINUX_PTRACE_H */