summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKuan-Ying Lee <[email protected]>2024-08-14 16:51:18 +0800
committerMark Wielaard <[email protected]>2024-08-17 01:07:16 +0200
commitd709bc7b0391a3d0287776935b5b37854bedcfba (patch)
tree3c40ef409e665871320f2d5c7b73e9aaa1009e49
parent0abdd2e7979fc18fc5d71af43f95b4827783b0b1 (diff)
aarch64: Add NT_ARM_TAGGED_ADDR_CTRL regset
Add the NT_ARM_TAGGED_ADDR_CTRL regset for aarch64. Recognize and print this new core itme. Signed-off-by: Kuan-Ying Lee <[email protected]>
-rw-r--r--backends/aarch64_corenote.c11
-rw-r--r--libebl/eblcorenotetypename.c1
2 files changed, 11 insertions, 1 deletions
diff --git a/backends/aarch64_corenote.c b/backends/aarch64_corenote.c
index 905a4b8a..bd0a4a72 100644
--- a/backends/aarch64_corenote.c
+++ b/backends/aarch64_corenote.c
@@ -107,6 +107,14 @@ static const Ebl_Core_Item aarch64_syscall_items [] =
}
};
+static const Ebl_Core_Item aarch64_mte_items [] =
+ {
+ {
+ .name = "tag_ctrl", .type = ELF_T_XWORD, .format = 'x',
+ .offset = 0, .group = "register"
+ }
+ };
+
#define AARCH64_HWBP_REG(KIND, N) \
{ \
.name = "DBG" KIND "VR" #N "_EL1", .type = ELF_T_XWORD, .format = 'x', \
@@ -167,6 +175,7 @@ AARCH64_BP_WP_GROUP ("W", aarch64_hw_wp_items);
EXTRA_ITEMS (NT_ARM_TLS, 8, aarch64_tls_items) \
EXTRA_ITEMS (NT_ARM_HW_BREAK, 264, aarch64_hw_bp_items) \
EXTRA_ITEMS (NT_ARM_HW_WATCH, 264, aarch64_hw_wp_items) \
- EXTRA_ITEMS (NT_ARM_SYSTEM_CALL, 4, aarch64_syscall_items)
+ EXTRA_ITEMS (NT_ARM_SYSTEM_CALL, 4, aarch64_syscall_items) \
+ EXTRA_ITEMS (NT_ARM_TAGGED_ADDR_CTRL, 8, aarch64_mte_items)
#include "linux-core-note.c"
diff --git a/libebl/eblcorenotetypename.c b/libebl/eblcorenotetypename.c
index 0e790d06..49331bdf 100644
--- a/libebl/eblcorenotetypename.c
+++ b/libebl/eblcorenotetypename.c
@@ -92,6 +92,7 @@ ebl_core_note_type_name (Ebl *ebl, uint32_t type, char *buf, size_t len)
KNOWNSTYPE (ARM_HW_BREAK);
KNOWNSTYPE (ARM_HW_WATCH);
KNOWNSTYPE (ARM_SYSTEM_CALL);
+ KNOWNSTYPE (ARM_TAGGED_ADDR_CTRL);
KNOWNSTYPE (SIGINFO);
KNOWNSTYPE (FILE);
#undef KNOWNSTYPE