Index: base/threading/platform_thread_posix.cc |
diff --git a/base/threading/platform_thread_posix.cc b/base/threading/platform_thread_posix.cc |
index 1d72f07fc645b3b7e087c751b148f2a3833ea0d0..b6cb7a51f38cf0f383aa5b14543e971574e705ed 100644 |
--- a/base/threading/platform_thread_posix.cc |
+++ b/base/threading/platform_thread_posix.cc |
@@ -190,10 +190,11 @@ void PlatformThread::SetName(const char* name) { |
// http://0pointer.de/blog/projects/name-your-threads.html |
// Set the name for the LWP (which gets truncated to 15 characters). |
// Note that glibc also has a 'pthread_setname_np' api, but it may not be |
- // available everywhere and doesn't seem to have any advantage over using |
- // prctl. |
+ // available everywhere and it's only benefit over using prctl directly is |
+ // that it can set the name of threads other than the current thread. |
int err = prctl(PR_SET_NAME, name); |
- if (err < 0) |
+ // We expect EPERM failures in sandboxed processes, just ignore those. |
+ if (err < 0 && errno != EPERM) |
DPLOG(ERROR) << "prctl(PR_SET_NAME)"; |
} |
#elif defined(OS_MACOSX) |