From ce192338645499d4ed5a9a3a9f8105f0135a7cfd Mon Sep 17 00:00:00 2001 From: Luis Machado Date: Mon, 15 Jun 2020 15:54:00 -0300 Subject: [PATCH 1/1] Add NEWS entry. Mention the new packets and memory tagging features. gdb/ChangeLog: 2021-03-24 Luis Machado * NEWS: Mention memory tagging changes. --- gdb/ChangeLog | 4 ++++ gdb/NEWS | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5d7069a722..aa74cb9a73 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2021-03-24 Luis Machado + + * NEWS: Mention memory tagging changes. + 2021-03-24 Luis Machado * printcmd.c (decode_format): Handle the 'm' modifier. diff --git a/gdb/NEWS b/gdb/NEWS index 7f5a745d0c..6cf76a1431 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -3,6 +3,21 @@ *** Changes since GDB 10 +* GDB now supports general memory tagging functionality if the underlying + architecture supports the proper primitives and hooks. Currently this is + enabled only for AArch64 MTE. + + This includes: + + - Additional information when the inferior crashes with a SIGSEGV caused by + a memory tag violation. + + - A new modifier 'm' for the "x" command, which displays allocation tags for a + particular memory range. + + - Display of memory tag mismatches by "print", for addresses and + pointers, if memory tagging is supported by the architecture. + * Building GDB now requires GMP (The GNU Multiple Precision Arithmetic Library). @@ -39,6 +54,12 @@ set debug event-loop show debug event-loop Control the display of debug output about GDB's event loop. +set print memory-tag-violations +show print memory-tag-violations + Control whether to display additional information about memory tag violations + when printing pointers and addresses. Architecture support for memory + tagging is required for this option to have an effect. + maintenance flush symbol-cache maintenance flush register-cache These new commands are equivalent to the already existing commands @@ -50,6 +71,17 @@ maintenance flush dcache maintenance info target-sections Print GDB's internal target sections table. +memory-tag show-logical-tag POINTER + Print the logical tag for POINTER. +memory-tag with-logical-tag POINTER TAG + Print POINTER with logical tag TAG. +memory-tag show-allocation-tag ADDRESS + Print the allocation tag for ADDRESS. +memory-tag set-allocation-tag ADDRESS LENGTH TAGS + Set the allocation tag for [ADDRESS, ADDRESS + LENGTH) to TAGS. +memory-tag check POINTER + Validate that POINTER's logical tag matches the allocation tag. + * Changed commands break [PROBE_MODIFIER] [LOCATION] [thread THREADNUM] @@ -98,6 +130,14 @@ maintenance info sections ARM Symbian arm*-*-symbianelf* +* New remote packets + +qMemTags + Request the remote to send allocation tags for a particular memory range. +QMemTags + Request the remote to store the specified allocation tags to the requested + memory range. + *** Changes in GDB 10 * There are new feature names for ARC targets: "org.gnu.gdb.arc.core" -- 2.34.1