binutils-gdb/gdb/arch
Luis Machado cf44c9fa1b AArch64: Report tag violation error information
Whenever a memory tag violation occurs, we get a SIGSEGV. Additional
information can be obtained through the siginfo data structure.

For AArch64 the Linux kernel may expose the fault address and tag
information, if we have a synchronous event. Otherwise there is
no fault address available.

The synchronous event looks like this:

--
(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault
Memory tag violation while accessing address 0x0500fffff7ff8000
Allocation tag 0x1.
Logical tag 0x5
--

The asynchronous event looks like this:

--
(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault
Memory tag violation
Fault address unavailable.
--

gdb/ChangeLog:

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

	* aarch64-linux-tdep.c
	(aarch64_linux_report_signal_info): New function.
	(aarch64_linux_init_abi): Register
	aarch64_linux_report_signal_info as the report_signal_info hook.
	* arch/aarch64-linux.h (SEGV_MTEAERR): Define.
	(SEGV_MTESERR): Define.
2021-03-24 14:56:07 -03:00
..
aarch32.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
aarch32.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
aarch64-insn.c gdb: convert aarch64 to new-style debug macros 2021-01-11 16:52:42 -05:00
aarch64-insn.h GDB: aarch64: Add ability to displaced step over a BR/BLR instruction 2021-01-27 17:12:25 +00:00
aarch64-mte-linux.c AArch64: Implement the memory tagging gdbarch hooks 2021-03-24 14:55:14 -03:00
aarch64-mte-linux.h AArch64: Report tag violation error information 2021-03-24 14:56:07 -03:00
aarch64.c AArch64: Add target description/feature for MTE registers 2021-03-24 14:52:08 -03:00
aarch64.h AArch64: Add target description/feature for MTE registers 2021-03-24 14:52:08 -03:00
amd64.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
amd64.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arc.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arc.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-get-next-pcs.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-get-next-pcs.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-linux.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-linux.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
i386.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
i386.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-common.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-common.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-tdesc.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
riscv.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
riscv.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
tic6x.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
tic6x.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
xtensa.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00