llvm-project/lldb/unittests/Process
Joseph Tremoulet 85dfcaadc5 [LLDB] MinidumpParser: Prefer executable module even at higher address
When a program maps one of its own modules for reading, and then
crashes, breakpad can emit two entries for that module in the
ModuleList.  We have logic to identify this case by checking permissions
on mapped memory regions and report just the module with an executable
region.  As currently written, though, the check is asymmetric -- the
entry with the executable region must be the second one encountered for
the preference to kick in.

This change makes the logic symmetric, so that the first-encountered
module will similarly be preferred if it has an executable region but
the second-encountered module does not.  This happens for example when
the module in question is the executable itself, which breakpad likes to
report first -- we need to ignore the other entry for that module when
we see it later, even though it may be mapped at a lower virtual
address.

Reviewed By: clayborg

Differential Revision: https://reviews.llvm.org/D94629
2021-01-14 13:17:57 -05:00
..
Linux [lldb] Get rid of helper CMake variables for Python 2020-08-17 08:47:52 -07:00
POSIX [lldb] Use modern CMake to avoid repetition (NFC) 2020-08-10 22:29:40 -07:00
Utility [lldb] [unittests] Filter FreeBSD through CMake rather than #ifdef 2020-12-17 13:55:42 +01:00
gdb-remote [lldb] Error when there are no ports to launch a gdbserver on 2020-11-30 10:19:14 +00:00
minidump [LLDB] MinidumpParser: Prefer executable module even at higher address 2021-01-14 13:17:57 -05:00
CMakeLists.txt [lldb] [Process/FreeBSDRemote] Access GPR via reginfo offsets 2020-11-16 12:19:37 +01:00
ProcessEventDataTest.cpp [lldb] "target create" shouldn't save target if the command failed 2020-12-12 16:40:58 +03:00