[all-commits] [llvm/llvm-project] d510b5: [lldb][AArch64] Annotate synchronous tag faults
David Spickett via All-commits
all-commits at lists.llvm.org
Thu Jul 29 02:26:52 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: d510b5f199d6e7a3062b5a6ea43181c4cc00a605
https://github.com/llvm/llvm-project/commit/d510b5f199d6e7a3062b5a6ea43181c4cc00a605
Author: David Spickett <david.spickett at linaro.org>
Date: 2021-07-29 (Thu, 29 Jul 2021)
Changed paths:
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.h
A lldb/test/API/linux/aarch64/mte_tag_faults/Makefile
A lldb/test/API/linux/aarch64/mte_tag_faults/TestAArch64LinuxMTEMemoryTagFaults.py
A lldb/test/API/linux/aarch64/mte_tag_faults/main.c
Log Message:
-----------
[lldb][AArch64] Annotate synchronous tag faults
In the latest Linux kernels synchronous tag faults
include the tag bits in their address.
This change adds logical and allocation tags to the
description of synchronous tag faults.
(asynchronous faults have no address)
Process 1626 stopped
* thread #1, name = 'a.out', stop reason = signal SIGSEGV: sync tag check fault (fault address: 0x900fffff7ff9010 logical tag: 0x9 allocation tag: 0x0)
This extends the existing description and will
show as much as it can on the rare occasion something
fails.
This change supports AArch64 MTE only but other
architectures could be added by extending the
switch at the start of AnnotateSyncTagCheckFault.
The rest of the function is generic code.
Tests have been added for synchronous and asynchronous
MTE faults.
Reviewed By: omjavaid
Differential Revision: https://reviews.llvm.org/D105178
More information about the All-commits
mailing list