diff options
author | Pavel Labath <labath@google.com> | 2017-02-24 09:29:14 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2017-02-24 09:29:14 +0000 |
commit | 4a705e7ea0cb911d9ec2933b99f5d1f7c1ba9ad3 (patch) | |
tree | 37789fcd612ae9d4d7099924a6c62a11bc3d2eab /lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp | |
parent | 80c3b17410e10bab68ca3f48e86cdbc5357a9954 (diff) | |
download | bcm5719-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.cpp | 7 |
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); |