summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2017-02-24 09:29:14 +0000
committerPavel Labath <labath@google.com>2017-02-24 09:29:14 +0000
commit4a705e7ea0cb911d9ec2933b99f5d1f7c1ba9ad3 (patch)
tree37789fcd612ae9d4d7099924a6c62a11bc3d2eab /lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
parent80c3b17410e10bab68ca3f48e86cdbc5357a9954 (diff)
downloadbcm5719-llvm-4a705e7ea0cb911d9ec2933b99f5d1f7c1ba9ad3.tar.gz
bcm5719-llvm-4a705e7ea0cb911d9ec2933b99f5d1f7c1ba9ad3.zip
Implement QPassSignals GDB package in lldb-server
Summary: QPassSignals package allows lldb client to tell lldb-server to ignore certain types of signals and re-inject them back to inferior without stopping execution. Reviewers: jmajors, labath Subscribers: danalbert, srhines, emaste, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D30286 Author: Eugene Zemtsov <ezemtsov@google.com> llvm-svn: 296101
Diffstat (limited to 'lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp')
-rw-r--r--lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
index c3b6f4c352d..1ff8893192f 100644
--- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
+++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
@@ -1037,6 +1037,13 @@ void NativeProcessLinux::MonitorSignal(const siginfo_t &info,
return;
}
+ // Check if debugger should stop at this signal or just ignore it
+ // and resume the inferior.
+ if (m_signals_to_ignore.find(signo) != m_signals_to_ignore.end()) {
+ ResumeThread(thread, thread.GetState(), signo);
+ return;
+ }
+
// This thread is stopped.
LLDB_LOG(log, "received signal {0}", Host::GetSignalAsCString(signo));
thread.SetStoppedBySignal(signo, &info);
OpenPOWER on IntegriCloud