summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2015-07-20 16:14:46 +0000
committerPavel Labath <labath@google.com>2015-07-20 16:14:46 +0000
commit44e82db2919c9caab3530d03e066943c58dc6fcd (patch)
treee5bba8b78078be0b0d95be853411580ce09cb69e /lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
parent19dbd6c6c250d01e4774613bd92d53f6b895bed8 (diff)
downloadbcm5719-llvm-44e82db2919c9caab3530d03e066943c58dc6fcd.tar.gz
bcm5719-llvm-44e82db2919c9caab3530d03e066943c58dc6fcd.zip
[NativeProcessLinux] Bugfix in the monitor thread
Make sure we dont treat EINTR as a fatal error. I was getting this when trying to profile the debugger. I'm not sure why this wasn't surfacing before, it could be that the profiler is using some signals internally. llvm-svn: 242681
Diffstat (limited to 'lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp')
-rw-r--r--lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
index 372ac789d6a..85638720b9a 100644
--- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
+++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
@@ -744,6 +744,9 @@ NativeProcessLinux::Monitor::MainLoop()
int r = select(max_fd, &fds, nullptr, nullptr, nullptr);
if (r < 0)
{
+ if (errno == EINTR)
+ continue;
+
Log *log(GetLogIfAllCategoriesSet(LIBLLDB_LOG_PROCESS));
if (log)
log->Printf("NativeProcessLinux::Monitor::%s exiting because select failed: %s",
OpenPOWER on IntegriCloud