1## Permissions to allow system-wide tracing to the kernel trace buffer.
2##
3on late-init
4
5# Allow writing to the kernel trace log.
6    chmod 0222 /sys/kernel/debug/tracing/trace_marker
7    chmod 0222 /sys/kernel/tracing/trace_marker
8
9# Scheduler tracepoints require schedstats=enable
10    write /proc/sys/kernel/sched_schedstats 1
11
12# Grant unix world read/write permissions to kernel tracepoints.
13# Access control to these files is now entirely in selinux policy.
14    chmod 0666 /sys/kernel/debug/tracing/trace_clock
15    chmod 0666 /sys/kernel/tracing/trace_clock
16    chmod 0666 /sys/kernel/debug/tracing/buffer_size_kb
17    chmod 0666 /sys/kernel/tracing/buffer_size_kb
18    chmod 0666 /sys/kernel/debug/tracing/options/overwrite
19    chmod 0666 /sys/kernel/tracing/options/overwrite
20    chmod 0666 /sys/kernel/debug/tracing/options/print-tgid
21    chmod 0666 /sys/kernel/tracing/options/print-tgid
22    chmod 0666 /sys/kernel/debug/tracing/saved_cmdlines_size
23    chmod 0666 /sys/kernel/tracing/saved_cmdlines_size
24    chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_switch/enable
25    chmod 0666 /sys/kernel/tracing/events/sched/sched_switch/enable
26    chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
27    chmod 0666 /sys/kernel/tracing/events/sched/sched_wakeup/enable
28    chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable
29    chmod 0666 /sys/kernel/tracing/events/sched/sched_blocked_reason/enable
30    chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable
31    chmod 0666 /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable
32    chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_pi_setprio/enable
33    chmod 0666 /sys/kernel/tracing/events/sched/sched_pi_setprio/enable
34    chmod 0666 /sys/kernel/debug/tracing/events/cgroup/enable
35    chmod 0666 /sys/kernel/tracing/events/cgroup/enable
36    chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable
37    chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency/enable
38    chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_idle/enable
39    chmod 0666 /sys/kernel/tracing/events/power/cpu_idle/enable
40    chmod 0666 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable
41    chmod 0666 /sys/kernel/tracing/events/power/clock_set_rate/enable
42    chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable
43    chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency_limits/enable
44    chmod 0666 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable
45    chmod 0666 /sys/kernel/tracing/events/cpufreq_interactive/enable
46    chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable
47    chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable
48    chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable
49    chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable
50    chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable
51    chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable
52    chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable
53    chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable
54    chmod 0666 /sys/kernel/debug/tracing/tracing_on
55    chmod 0666 /sys/kernel/tracing/tracing_on
56    chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction/enable
57    chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction/enable
58    chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable
59    chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction_received/enable
60    chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_lock/enable
61    chmod 0666 /sys/kernel/tracing/events/binder/binder_lock/enable
62    chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_locked/enable
63    chmod 0666 /sys/kernel/tracing/events/binder/binder_locked/enable
64    chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_unlock/enable
65    chmod 0666 /sys/kernel/tracing/events/binder/binder_unlock/enable
66    chmod 0666 /sys/kernel/debug/tracing/events/i2c/enable
67    chmod 0666 /sys/kernel/tracing/events/i2c/enable
68    chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_read/enable
69    chmod 0666 /sys/kernel/tracing/events/i2c/i2c_read/enable
70    chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_write/enable
71    chmod 0666 /sys/kernel/tracing/events/i2c/i2c_write/enable
72    chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_result/enable
73    chmod 0666 /sys/kernel/tracing/events/i2c/i2c_result/enable
74    chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_reply/enable
75    chmod 0666 /sys/kernel/tracing/events/i2c/i2c_reply/enable
76    chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_read/enable
77    chmod 0666 /sys/kernel/tracing/events/i2c/smbus_read/enable
78    chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_write/enable
79    chmod 0666 /sys/kernel/tracing/events/i2c/smbus_write/enable
80    chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_result/enable
81    chmod 0666 /sys/kernel/tracing/events/i2c/smbus_result/enable
82    chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_reply/enable
83    chmod 0666 /sys/kernel/tracing/events/i2c/smbus_reply/enable
84    chmod 0666 /sys/kernel/debug/tracing/events/lowmemorykiller/enable
85    chmod 0666 /sys/kernel/tracing/events/lowmemorykiller/enable
86    chmod 0666 /sys/kernel/debug/tracing/events/sync/enable
87    chmod 0666 /sys/kernel/tracing/events/sync/enable
88    chmod 0666 /sys/kernel/debug/tracing/events/fence/enable
89    chmod 0666 /sys/kernel/tracing/events/fence/enable
90
91
92    # disk
93    chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_enter/enable
94    chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable
95    chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_exit/enable
96    chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable
97    chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_begin/enable
98    chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable
99    chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_end/enable
100    chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable
101    chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_begin/enable
102    chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable
103    chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_end/enable
104    chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable
105    chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_enter/enable
106    chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable
107    chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_exit/enable
108    chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable
109    chmod 0666 /sys/kernel/tracing/events/block/block_rq_issue/enable
110    chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_issue/enable
111    chmod 0666 /sys/kernel/tracing/events/block/block_rq_complete/enable
112    chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_complete/enable
113
114    # graphics
115    chmod 0666 /sys/kernel/tracing/events/sde/enable
116    chmod 0666 /sys/kernel/debug/tracing/events/sde/enable
117    chmod 0666 /sys/kernel/tracing/events/mdss/enable
118    chmod 0666 /sys/kernel/debug/tracing/events/mdss/enable
119
120# Tracing disabled by default
121    write /sys/kernel/debug/tracing/tracing_on 0
122    write /sys/kernel/tracing/tracing_on 0
123
124# Read and truncate the kernel trace.
125    chmod 0666 /sys/kernel/debug/tracing/trace
126    chmod 0666 /sys/kernel/tracing/trace
127
128on property:persist.debug.atrace.boottrace=1
129    start boottrace
130
131# Run atrace with the categories written in a file
132service boottrace /system/bin/atrace --async_start -f /data/misc/boottrace/categories
133    disabled
134    oneshot
135