This feature "memory-tagging+" indicates that lldb-server
supports memory tagging packets. (added in a later patch)
We check HWCAP2_MTE to decide whether to enable this
feature for Linux.
Paths
| Differential D97282
[lldb][AArch64] Add memory-tagging qSupported feature ClosedPublic Authored by DavidSpickett on Feb 23 2021, 6:26 AM.
Details Summary This feature "memory-tagging+" indicates that lldb-server We check HWCAP2_MTE to decide whether to enable this
Diff Detail
Event TimelineHerald added subscribers: danielkiss, kristof.beyls, krytarowski. · View Herald TranscriptFeb 23 2021, 6:26 AM DavidSpickett added a parent revision: D97281: [lldb][AArch64] Add class for managing memory tags.Edited · Feb 23 2021, 6:27 AM Comment ActionsThis feature name matches the one GDB is planning to use: https://sourceware.org/pipermail/gdb-patches/2021-January/175514.html Also described in my RFC: https://lists.llvm.org/pipermail/lldb-dev/2020-August/016402.html DavidSpickett added a child revision: D95601: [lldb][AArch64] Add memory tag reading to lldb-server.Feb 23 2021, 6:31 AM This revision is now accepted and ready to land.Mar 1 2021, 3:37 AM Comment Actions
Same code just moved around since qSupported parsing was refactored. Comment Actions
Comment Actions @mgorny Can you take a quick look and see if I'm adding this new feature correctly? And thanks for working on qSupported. I skipped checking HWCAP in my first revision because the features were added in generic code, now I can be more accurate in the Linux specific method.
Comment Actions
Everything looks good from my perspective.
Thanks!
Comment Actions asm/hwcap.h is not available on x86 (riscv/arm/aarch64 have it at least) This comment was removed by DavidSpickett. This revision was landed with ongoing or failed builds.Jun 24 2021, 7:43 AM Closed by commit rG8d58fbd09efb: [lldb][AArch64] Add memory-tagging qSupported feature (authored by DavidSpickett). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 354251 lldb/include/lldb/Host/common/NativeProcessProtocol.h
lldb/include/lldb/Target/Process.h
lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
|
There is a mechanism to get auvx from a process but I don't think we have one at this point.