[Bug 24530] New: LLDB can miss inferior SIGSTOP and SIGINT under some circumstances

Bug ID 24530
Summary LLDB can miss inferior SIGSTOP and SIGINT under some circumstances
Product lldb
Version unspecified
Hardware PC
OS All
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter labath@google.com
CC llvm-bugs@lists.llvm.org
Classification Unclassified

This happens when the inferior gets a signal at the same time we are trying to
interrupt it. If the signal is SIGSTOP or SIGINT, the interrupt machinery in
GDBRemoteCommunicationClient::SendContinuePacketAndWaitForResponse can mistake
the real signal stop for the maintenance stop and resume the process
incorrectly. RaiseTestCase.restart_bug_test reproduces this behavior. The bug
affect all targets which use the remote stub.