Upstream lldb support for summarizing BLRAx and LDRAx auth failures.
rdar://41615322
Paths
| Differential D102428
[StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures ClosedPublic Authored by vsk on May 13 2021, 11:05 AM.
Details Summary Upstream lldb support for summarizing BLRAx and LDRAx auth failures. rdar://41615322
Diff Detail
Event TimelineComment Actions I think the test files should go in test/API/functionalities/ptrauth_diagnostics/ instead.
Comment Actions Thanks for the review!
Comment Actions I think some of my questions are too detailed for this initial patch, I'm sure we can improve the diagnostics over time as situations come up. Glad to see this being upstreamed. Not very knowledgeable on Mach specifics so I'll leave the final review to others.
Comment Actions Address review feedback.
Comment Actions Friendly ping.
Comment Actions Apologies, I missed the ping. A couple of minor comments otherwise this looks good to me. @omjavaid Should take a look too as he's doing/did the PAC work for Arm Linux. I figure this can go in for Mac and be made generic later as needed. (e.g. Arm Linux won't have the special brk bits)
Comment Actions Apologies, I forgot about this for way too long. I don't think Omair is going to object anyway so let's get this in. This revision is now accepted and ready to land.Sep 8 2021, 2:29 AM This revision was landed with ongoing or failed builds.Sep 14 2021, 2:04 PM Closed by commit rG66902a32c838: [StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures (authored by vsk). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 360180 lldb/include/lldb/Core/Address.h
lldb/include/lldb/Core/Disassembler.h
lldb/source/Core/Address.cpp
lldb/source/Core/Disassembler.cpp
lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
lldb/source/Plugins/Process/Utility/StopInfoMachException.h
lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/Makefile
lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/TestPtrauthBLRAADiagnostic.py
lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/blraa.c
lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/Makefile
lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/TestPtrauthBRAADiagnostic.py
lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/braa.c
lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/Makefile
lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/TestPtrauthLDRAADiagnostic.py
lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/ldraa.c
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/Makefile
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/TestPtrauthBRKc47xDiagnostic.py
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/brkC47x.c
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/Makefile
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/TestPtrauthBRKc47xX16Invalid.py
lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/brkC47x.c
|
clang-tidy: error: 'lldb/lldb-defines.h' file not found [clang-diagnostic-error]
not useful