diff options
author | Yabin Cui <yabinc@google.com> | 2017-06-01 23:37:49 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-06-01 23:37:49 +0000 |
commit | 6ec981b750d54bae4053f8418b6de39747f63e70 (patch) | |
tree | a75ee11953caa54ae80a8fd4b94db9e6c7b819b3 | |
parent | b396fbcceff891cde25311cd650e3beaa0f4cec0 (diff) | |
parent | df104e1ed80c87b26b2e4652c2631d0f66137589 (diff) | |
download | extras-6ec981b750d54bae4053f8418b6de39747f63e70.tar.gz |
Merge "simpleperf: write -1 to perf_event_paranoid when running as root." am: 668878b3b7
am: df104e1ed8
Change-Id: I56f126547cac5741c93513b9a2581be551da6034
-rw-r--r-- | simpleperf/environment.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/simpleperf/environment.cpp b/simpleperf/environment.cpp index d0cb8351..7fff85f1 100644 --- a/simpleperf/environment.cpp +++ b/simpleperf/environment.cpp @@ -361,8 +361,11 @@ static const char* GetLimitLevelDescription(int limit_level) { } bool CheckPerfEventLimit() { - // root is not limited by /proc/sys/kernel/perf_event_paranoid. - if (IsRoot()) { + // Root is not limited by /proc/sys/kernel/perf_event_paranoid. However, the monitored threads + // may create child processes not running as root. To make sure the child processes have + // enough permission to create inherited tracepoint events, write -1 to perf_event_paranoid. + // See http://b/62230699. + if (IsRoot() && android::base::WriteStringToFile("-1", "/proc/sys/kernel/perf_event_paranoid")) { return true; } int limit_level; |