summaryrefslogtreecommitdiff
path: root/simpleperf/simpleperf.rc
diff options
context:
space:
mode:
Diffstat (limited to 'simpleperf/simpleperf.rc')
-rw-r--r--simpleperf/simpleperf.rc10
1 files changed, 8 insertions, 2 deletions
diff --git a/simpleperf/simpleperf.rc b/simpleperf/simpleperf.rc
index 928e9d34..06ad0f5d 100644
--- a/simpleperf/simpleperf.rc
+++ b/simpleperf/simpleperf.rc
@@ -1,3 +1,9 @@
+# Not a service because services can only be stopped with SIGKILL
+# (or SIGTERM+200ms+SIGKILL with gentle_kill), and simpleperf
+# needs more than 200ms to clean up.
-on zygote-start && property:ro.debuggable=1 && property:persist.simpleperf.boot_record=*
- exec_background /system/bin/simpleperf boot-record --log-to-android-buffer --record "${persist.simpleperf.boot_record}"
+on early-init && property:ro.boot.simpleperf.boot_record=*
+ exec_background u:r:su:s0 root root -- /system/bin/simpleperf record -a -g --exclude-perf -o /tmp/boot_perf.data
+
+on property:sys.boot_completed=1 && property:ro.boot.simpleperf.boot_record=*
+ exec u:r:su:s0 root root -- /system/bin/killall simpleperf