Bug ID 15258
Summary lldb asserts on Linux in ProcessMonitor::GetCrashReasonForSIGSEGV
Product lldb
Version unspecified
Hardware PC
OS Linux
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee lldb-dev@cs.uiuc.edu
Reporter daniel.malea@intel.com
Classification Unclassified
In the testcase TestExprDoesntBlock.py, the inferior sometimes (but not always)
receives a SIGSEGV during expression evaluation. The siginfo structure that
LLDB gets from the kernel has an invalid si_code value (128 == SI_KERNEL).
According to siginfo docs, si_code == SI_KERNEL means that the signal was sent
by the kernel -- but not because a protected or otherwise invalid address was
accessed. Most likely this is happening because of some ptrace() mis-use
somewhere.
While it would be trivial to handle SI_KERNEL and add an appropriate
exit-description string to ProcessMessage.[h|cpp] we want to find out why
SI_KERNEL is being sent to this test case, and why it is not happening always.
Skipping the test case until someone else has time to look at it further.