Loading cmds/atrace/atrace.rc +76 −131 Original line number Diff line number Diff line Loading @@ -6,141 +6,86 @@ on post-fs chmod 0222 /sys/kernel/debug/tracing/trace_marker chmod 0222 /sys/kernel/tracing/trace_marker # Allow the shell group to enable (some) kernel tracing. chown root shell /sys/kernel/debug/tracing/trace_clock chown root shell /sys/kernel/tracing/trace_clock chown root shell /sys/kernel/debug/tracing/buffer_size_kb chown root shell /sys/kernel/tracing/buffer_size_kb chown root shell /sys/kernel/debug/tracing/options/overwrite chown root shell /sys/kernel/tracing/options/overwrite chown root shell /sys/kernel/debug/tracing/options/print-tgid chown root shell /sys/kernel/tracing/options/print-tgid chown root shell /sys/kernel/debug/tracing/saved_cmdlines_size chown root shell /sys/kernel/tracing/saved_cmdlines_size chown root shell /sys/kernel/debug/tracing/events/sched/sched_switch/enable chown root shell /sys/kernel/tracing/events/sched/sched_switch/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chown root shell /sys/kernel/tracing/events/sched/sched_wakeup/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chown root shell /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chown root shell /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chown root shell /sys/kernel/debug/tracing/events/cgroup/enable chown root shell /sys/kernel/tracing/events/cgroup/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chown root shell /sys/kernel/tracing/events/power/cpu_frequency/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_idle/enable chown root shell /sys/kernel/tracing/events/power/cpu_idle/enable chown root shell /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chown root shell /sys/kernel/tracing/events/power/clock_set_rate/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chown root shell /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chown root shell /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chown root shell /sys/kernel/tracing/events/cpufreq_interactive/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chown root shell /sys/kernel/tracing/events/binder/binder_transaction/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chown root shell /sys/kernel/tracing/events/binder/binder_transaction_received/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_lock/enable chown root shell /sys/kernel/tracing/events/binder/binder_lock/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_locked/enable chown root shell /sys/kernel/tracing/events/binder/binder_locked/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chown root shell /sys/kernel/tracing/events/binder/binder_unlock/enable chown root shell /sys/kernel/debug/tracing/events/lowmemorykiller/enable chown root shell /sys/kernel/tracing/events/lowmemorykiller/enable chown root shell /sys/kernel/debug/tracing/tracing_on chown root shell /sys/kernel/tracing/tracing_on chmod 0664 /sys/kernel/debug/tracing/trace_clock chmod 0664 /sys/kernel/tracing/trace_clock chmod 0664 /sys/kernel/debug/tracing/buffer_size_kb chmod 0664 /sys/kernel/tracing/buffer_size_kb chmod 0664 /sys/kernel/debug/tracing/options/overwrite chmod 0664 /sys/kernel/tracing/options/overwrite chmod 0664 /sys/kernel/debug/tracing/options/print-tgid chmod 0664 /sys/kernel/tracing/options/print-tgid chmod 0664 /sys/kernel/debug/tracing/saved_cmdlines_size chmod 0664 /sys/kernel/tracing/saved_cmdlines_size chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_switch/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_switch/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_wakeup/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chmod 0664 /sys/kernel/debug/tracing/events/cgroup/enable chmod 0664 /sys/kernel/tracing/events/cgroup/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_frequency/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_idle/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_idle/enable chmod 0664 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chmod 0664 /sys/kernel/tracing/events/power/clock_set_rate/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chmod 0664 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chmod 0664 /sys/kernel/tracing/events/cpufreq_interactive/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0664 /sys/kernel/debug/tracing/tracing_on chmod 0664 /sys/kernel/tracing/tracing_on chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_transaction/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_transaction_received/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_lock/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_lock/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_locked/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_locked/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_unlock/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/enable chmod 0664 /sys/kernel/tracing/events/i2c/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_read/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_read/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_write/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_write/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_result/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_result/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_reply/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_reply/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_read/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_read/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_write/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_write/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_result/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_result/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_reply/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_reply/enable chmod 0664 /sys/kernel/debug/tracing/events/lowmemorykiller/enable chmod 0664 /sys/kernel/tracing/events/lowmemorykiller/enable # Grant unix world read/write permissions to kernel tracepoints. # Access control to these files is now entirely in selinux policy. chmod 0666 /sys/kernel/debug/tracing/trace_clock chmod 0666 /sys/kernel/tracing/trace_clock chmod 0666 /sys/kernel/debug/tracing/buffer_size_kb chmod 0666 /sys/kernel/tracing/buffer_size_kb chmod 0666 /sys/kernel/debug/tracing/options/overwrite chmod 0666 /sys/kernel/tracing/options/overwrite chmod 0666 /sys/kernel/debug/tracing/options/print-tgid chmod 0666 /sys/kernel/tracing/options/print-tgid chmod 0666 /sys/kernel/debug/tracing/saved_cmdlines_size chmod 0666 /sys/kernel/tracing/saved_cmdlines_size chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_switch/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_switch/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_wakeup/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chmod 0666 /sys/kernel/debug/tracing/events/cgroup/enable chmod 0666 /sys/kernel/tracing/events/cgroup/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_idle/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_idle/enable chmod 0666 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chmod 0666 /sys/kernel/tracing/events/power/clock_set_rate/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chmod 0666 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chmod 0666 /sys/kernel/tracing/events/cpufreq_interactive/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0666 /sys/kernel/debug/tracing/tracing_on chmod 0666 /sys/kernel/tracing/tracing_on chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction_received/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_lock/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_lock/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_locked/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_locked/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_unlock/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/enable chmod 0666 /sys/kernel/tracing/events/i2c/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_read/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_read/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_write/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_write/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_result/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_result/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_reply/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_reply/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_read/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_read/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_write/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_write/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_result/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_result/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_reply/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_reply/enable chmod 0666 /sys/kernel/debug/tracing/events/lowmemorykiller/enable chmod 0666 /sys/kernel/tracing/events/lowmemorykiller/enable # Tracing disabled by default write /sys/kernel/debug/tracing/tracing_on 0 write /sys/kernel/tracing/tracing_on 0 # Allow only the shell group to read and truncate the kernel trace. chown root shell /sys/kernel/debug/tracing/trace chown root shell /sys/kernel/tracing/trace chmod 0660 /sys/kernel/debug/tracing/trace chmod 0660 /sys/kernel/tracing/trace # Read and truncate the kernel trace. chmod 0666 /sys/kernel/debug/tracing/trace chmod 0666 /sys/kernel/tracing/trace on property:persist.debug.atrace.boottrace=1 start boottrace Loading cmds/atrace/atrace_userdebug.rc +34 −38 Original line number Diff line number Diff line ## Permissions to allow additional system-wide tracing to the kernel trace buffer. ## The default list of permissions is set in frameworks/native/cmds/atrace/atrace.rc # Allow the shell group to enable kernel tracepoints: # Grant unix world read/write permissions to enable kernel tracepoints. # Access control to these files is now entirely in selinux policy. on post-fs chown root shell /sys/kernel/debug/tracing/events/sync/enable chown root shell /sys/kernel/debug/tracing/events/workqueue/enable chown root shell /sys/kernel/debug/tracing/events/regulator/enable chown root shell /sys/kernel/debug/tracing/events/pagecache/enable chmod 0666 /sys/kernel/tracing/events/sync/enable chmod 0666 /sys/kernel/debug/tracing/events/sync/enable chmod 0666 /sys/kernel/tracing/events/workqueue/enable chmod 0666 /sys/kernel/debug/tracing/events/workqueue/enable chmod 0666 /sys/kernel/tracing/events/regulator/enable chmod 0666 /sys/kernel/debug/tracing/events/regulator/enable chmod 0666 /sys/kernel/tracing/events/pagecache/enable chmod 0666 /sys/kernel/debug/tracing/events/pagecache/enable # irq chown root shell /sys/kernel/debug/tracing/events/irq/enable chown root shell /sys/kernel/debug/tracing/events/ipi/enable chmod 0666 /sys/kernel/tracing/events/irq/enable chmod 0666 /sys/kernel/debug/tracing/events/irq/enable chmod 0666 /sys/kernel/tracing/events/ipi/enable chmod 0666 /sys/kernel/debug/tracing/events/ipi/enable # disk chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chown root shell /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chown root shell /sys/kernel/debug/tracing/events/block/block_rq_complete/enable chmod 0664 /sys/kernel/debug/tracing/events/sync/enable chmod 0664 /sys/kernel/debug/tracing/events/workqueue/enable chmod 0664 /sys/kernel/debug/tracing/events/regulator/enable chmod 0664 /sys/kernel/debug/tracing/events/pagecache/enable # irq chmod 0664 /sys/kernel/debug/tracing/events/irq/enable chmod 0664 /sys/kernel/debug/tracing/events/ipi/enable # disk chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0664 /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chmod 0664 /sys/kernel/debug/tracing/events/block/block_rq_complete/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_end/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_end/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0666 /sys/kernel/tracing/events/block/block_rq_issue/enable chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chmod 0666 /sys/kernel/tracing/events/block/block_rq_complete/enable chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_complete/enable cmds/dumpstate/dumpstate.cpp +22 −25 Original line number Diff line number Diff line Loading @@ -657,12 +657,18 @@ static int dump_stat_from_fd(const char *title __unused, const char *path, int f return 0; } /* timeout in ms */ static unsigned long logcat_timeout(const char *name) { log_id_t id = android_name_to_log_id(name); static const long MINIMUM_LOGCAT_TIMEOUT_MS = 50000; /* timeout in ms to read a list of buffers */ static unsigned long logcat_timeout(const std::vector<std::string>& buffers) { unsigned long timeout_ms = 0; for (const auto& buffer : buffers) { log_id_t id = android_name_to_log_id(buffer.c_str()); unsigned long property_size = __android_logger_get_buffer_size(id); /* Engineering margin is ten-fold our guess */ return 10 * (property_size + worst_write_perf) / worst_write_perf; timeout_ms += 10 * (property_size + worst_write_perf) / worst_write_perf; } return timeout_ms > MINIMUM_LOGCAT_TIMEOUT_MS ? timeout_ms : MINIMUM_LOGCAT_TIMEOUT_MS; } void Dumpstate::PrintHeader() const { Loading Loading @@ -831,13 +837,8 @@ static void DoKmsg() { } } static const long MINIMUM_LOGCAT_TIMEOUT_MS = 50000; static void DoKernelLogcat() { unsigned long timeout_ms = logcat_timeout("kernel"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } unsigned long timeout_ms = logcat_timeout({"kernel"}); RunCommand( "KERNEL LOG", {"logcat", "-b", "kernel", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, Loading @@ -848,25 +849,21 @@ static void DoLogcat() { unsigned long timeout_ms; // DumpFile("EVENT LOG TAGS", "/etc/event-log-tags"); // calculate timeout timeout_ms = logcat_timeout("main") + logcat_timeout("system") + logcat_timeout("crash"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"main", "system", "crash"}); RunCommand("SYSTEM LOG", {"logcat", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout("events"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"events"}); RunCommand( "EVENT LOG", {"logcat", "-b", "events", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout("radio"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"stats"}); RunCommand( "STATS LOG", {"logcat", "-b", "stats", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout({"radio"}); RunCommand( "RADIO LOG", {"logcat", "-b", "radio", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, Loading Loading @@ -1136,7 +1133,7 @@ static void DumpHals() { } RunCommandToFd(fd, "", {"lshal", "debug", interface}, {"lshal", "debug", "-E", interface}, CommandOptions::WithTimeout(2).AsRootIfAvailable().Build()); bool empty = 0 == lseek(fd, 0, SEEK_END); Loading cmds/installd/dexopt.cpp +10 −3 Original line number Diff line number Diff line Loading @@ -217,7 +217,7 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd const char* input_file_name, const char* output_file_name, int swap_fd, const char* instruction_set, const char* compiler_filter, bool debuggable, bool post_bootcomplete, bool background_job_compile, int profile_fd, const char* class_loader_context, int target_sdk_version) { const char* class_loader_context, int target_sdk_version, bool disable_hidden_api_checks) { static const unsigned int MAX_INSTRUCTION_SET_LEN = 7; if (strlen(instruction_set) >= MAX_INSTRUCTION_SET_LEN) { Loading Loading @@ -443,7 +443,8 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd + (have_dex2oat_large_app_threshold ? 1 : 0) + (disable_cdex ? 1 : 0) + (generate_minidebug_info ? 1 : 0) + (target_sdk_version != 0 ? 2 : 0)]; + (target_sdk_version != 0 ? 2 : 0) + (disable_hidden_api_checks ? 2 : 0)]; int i = 0; argv[i++] = dex2oat_bin; argv[i++] = zip_fd_arg; Loading Loading @@ -517,6 +518,10 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd argv[i++] = RUNTIME_ARG; argv[i++] = target_sdk_version_arg; } if (disable_hidden_api_checks) { argv[i++] = RUNTIME_ARG; argv[i++] = "-Xno-hidden-api-checks"; } // Do not add after dex2oat_flags, they should override others for debugging. argv[i] = NULL; Loading Loading @@ -1801,6 +1806,7 @@ int dexopt(const char* dex_path, uid_t uid, const char* pkgname, const char* ins bool profile_guided = (dexopt_flags & DEXOPT_PROFILE_GUIDED) != 0; bool is_secondary_dex = (dexopt_flags & DEXOPT_SECONDARY_DEX) != 0; bool background_job_compile = (dexopt_flags & DEXOPT_IDLE_BACKGROUND_JOB) != 0; bool disable_hidden_api_checks = (dexopt_flags & DEXOPT_DISABLE_HIDDEN_API_CHECKS) != 0; // Check if we're dealing with a secondary dex file and if we need to compile it. std::string oat_dir_str; Loading Loading @@ -1897,7 +1903,8 @@ int dexopt(const char* dex_path, uid_t uid, const char* pkgname, const char* ins background_job_compile, reference_profile_fd.get(), class_loader_context, target_sdk_version); target_sdk_version, disable_hidden_api_checks); _exit(68); /* only get here on exec failure */ } else { int res = wait_child(pid); Loading Loading
cmds/atrace/atrace.rc +76 −131 Original line number Diff line number Diff line Loading @@ -6,141 +6,86 @@ on post-fs chmod 0222 /sys/kernel/debug/tracing/trace_marker chmod 0222 /sys/kernel/tracing/trace_marker # Allow the shell group to enable (some) kernel tracing. chown root shell /sys/kernel/debug/tracing/trace_clock chown root shell /sys/kernel/tracing/trace_clock chown root shell /sys/kernel/debug/tracing/buffer_size_kb chown root shell /sys/kernel/tracing/buffer_size_kb chown root shell /sys/kernel/debug/tracing/options/overwrite chown root shell /sys/kernel/tracing/options/overwrite chown root shell /sys/kernel/debug/tracing/options/print-tgid chown root shell /sys/kernel/tracing/options/print-tgid chown root shell /sys/kernel/debug/tracing/saved_cmdlines_size chown root shell /sys/kernel/tracing/saved_cmdlines_size chown root shell /sys/kernel/debug/tracing/events/sched/sched_switch/enable chown root shell /sys/kernel/tracing/events/sched/sched_switch/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chown root shell /sys/kernel/tracing/events/sched/sched_wakeup/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chown root shell /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chown root shell /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chown root shell /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chown root shell /sys/kernel/debug/tracing/events/cgroup/enable chown root shell /sys/kernel/tracing/events/cgroup/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chown root shell /sys/kernel/tracing/events/power/cpu_frequency/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_idle/enable chown root shell /sys/kernel/tracing/events/power/cpu_idle/enable chown root shell /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chown root shell /sys/kernel/tracing/events/power/clock_set_rate/enable chown root shell /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chown root shell /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chown root shell /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chown root shell /sys/kernel/tracing/events/cpufreq_interactive/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chown root shell /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chown root shell /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chown root shell /sys/kernel/tracing/events/binder/binder_transaction/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chown root shell /sys/kernel/tracing/events/binder/binder_transaction_received/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_lock/enable chown root shell /sys/kernel/tracing/events/binder/binder_lock/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_locked/enable chown root shell /sys/kernel/tracing/events/binder/binder_locked/enable chown root shell /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chown root shell /sys/kernel/tracing/events/binder/binder_unlock/enable chown root shell /sys/kernel/debug/tracing/events/lowmemorykiller/enable chown root shell /sys/kernel/tracing/events/lowmemorykiller/enable chown root shell /sys/kernel/debug/tracing/tracing_on chown root shell /sys/kernel/tracing/tracing_on chmod 0664 /sys/kernel/debug/tracing/trace_clock chmod 0664 /sys/kernel/tracing/trace_clock chmod 0664 /sys/kernel/debug/tracing/buffer_size_kb chmod 0664 /sys/kernel/tracing/buffer_size_kb chmod 0664 /sys/kernel/debug/tracing/options/overwrite chmod 0664 /sys/kernel/tracing/options/overwrite chmod 0664 /sys/kernel/debug/tracing/options/print-tgid chmod 0664 /sys/kernel/tracing/options/print-tgid chmod 0664 /sys/kernel/debug/tracing/saved_cmdlines_size chmod 0664 /sys/kernel/tracing/saved_cmdlines_size chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_switch/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_switch/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_wakeup/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chmod 0664 /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chmod 0664 /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chmod 0664 /sys/kernel/debug/tracing/events/cgroup/enable chmod 0664 /sys/kernel/tracing/events/cgroup/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_frequency/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_idle/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_idle/enable chmod 0664 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chmod 0664 /sys/kernel/tracing/events/power/clock_set_rate/enable chmod 0664 /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chmod 0664 /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chmod 0664 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chmod 0664 /sys/kernel/tracing/events/cpufreq_interactive/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0664 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0664 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0664 /sys/kernel/debug/tracing/tracing_on chmod 0664 /sys/kernel/tracing/tracing_on chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_transaction/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_transaction_received/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_lock/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_lock/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_locked/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_locked/enable chmod 0664 /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chmod 0664 /sys/kernel/tracing/events/binder/binder_unlock/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/enable chmod 0664 /sys/kernel/tracing/events/i2c/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_read/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_read/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_write/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_write/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_result/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_result/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/i2c_reply/enable chmod 0664 /sys/kernel/tracing/events/i2c/i2c_reply/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_read/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_read/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_write/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_write/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_result/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_result/enable chmod 0664 /sys/kernel/debug/tracing/events/i2c/smbus_reply/enable chmod 0664 /sys/kernel/tracing/events/i2c/smbus_reply/enable chmod 0664 /sys/kernel/debug/tracing/events/lowmemorykiller/enable chmod 0664 /sys/kernel/tracing/events/lowmemorykiller/enable # Grant unix world read/write permissions to kernel tracepoints. # Access control to these files is now entirely in selinux policy. chmod 0666 /sys/kernel/debug/tracing/trace_clock chmod 0666 /sys/kernel/tracing/trace_clock chmod 0666 /sys/kernel/debug/tracing/buffer_size_kb chmod 0666 /sys/kernel/tracing/buffer_size_kb chmod 0666 /sys/kernel/debug/tracing/options/overwrite chmod 0666 /sys/kernel/tracing/options/overwrite chmod 0666 /sys/kernel/debug/tracing/options/print-tgid chmod 0666 /sys/kernel/tracing/options/print-tgid chmod 0666 /sys/kernel/debug/tracing/saved_cmdlines_size chmod 0666 /sys/kernel/tracing/saved_cmdlines_size chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_switch/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_switch/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_wakeup/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_blocked_reason/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_blocked_reason/enable chmod 0666 /sys/kernel/debug/tracing/events/sched/sched_cpu_hotplug/enable chmod 0666 /sys/kernel/tracing/events/sched/sched_cpu_hotplug/enable chmod 0666 /sys/kernel/debug/tracing/events/cgroup/enable chmod 0666 /sys/kernel/tracing/events/cgroup/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_idle/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_idle/enable chmod 0666 /sys/kernel/debug/tracing/events/power/clock_set_rate/enable chmod 0666 /sys/kernel/tracing/events/power/clock_set_rate/enable chmod 0666 /sys/kernel/debug/tracing/events/power/cpu_frequency_limits/enable chmod 0666 /sys/kernel/tracing/events/power/cpu_frequency_limits/enable chmod 0666 /sys/kernel/debug/tracing/events/cpufreq_interactive/enable chmod 0666 /sys/kernel/tracing/events/cpufreq_interactive/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_direct_reclaim_end/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_wake/enable chmod 0666 /sys/kernel/debug/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0666 /sys/kernel/tracing/events/vmscan/mm_vmscan_kswapd_sleep/enable chmod 0666 /sys/kernel/debug/tracing/tracing_on chmod 0666 /sys/kernel/tracing/tracing_on chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_transaction_received/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_transaction_received/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_lock/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_lock/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_locked/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_locked/enable chmod 0666 /sys/kernel/debug/tracing/events/binder/binder_unlock/enable chmod 0666 /sys/kernel/tracing/events/binder/binder_unlock/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/enable chmod 0666 /sys/kernel/tracing/events/i2c/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_read/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_read/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_write/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_write/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_result/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_result/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/i2c_reply/enable chmod 0666 /sys/kernel/tracing/events/i2c/i2c_reply/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_read/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_read/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_write/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_write/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_result/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_result/enable chmod 0666 /sys/kernel/debug/tracing/events/i2c/smbus_reply/enable chmod 0666 /sys/kernel/tracing/events/i2c/smbus_reply/enable chmod 0666 /sys/kernel/debug/tracing/events/lowmemorykiller/enable chmod 0666 /sys/kernel/tracing/events/lowmemorykiller/enable # Tracing disabled by default write /sys/kernel/debug/tracing/tracing_on 0 write /sys/kernel/tracing/tracing_on 0 # Allow only the shell group to read and truncate the kernel trace. chown root shell /sys/kernel/debug/tracing/trace chown root shell /sys/kernel/tracing/trace chmod 0660 /sys/kernel/debug/tracing/trace chmod 0660 /sys/kernel/tracing/trace # Read and truncate the kernel trace. chmod 0666 /sys/kernel/debug/tracing/trace chmod 0666 /sys/kernel/tracing/trace on property:persist.debug.atrace.boottrace=1 start boottrace Loading
cmds/atrace/atrace_userdebug.rc +34 −38 Original line number Diff line number Diff line ## Permissions to allow additional system-wide tracing to the kernel trace buffer. ## The default list of permissions is set in frameworks/native/cmds/atrace/atrace.rc # Allow the shell group to enable kernel tracepoints: # Grant unix world read/write permissions to enable kernel tracepoints. # Access control to these files is now entirely in selinux policy. on post-fs chown root shell /sys/kernel/debug/tracing/events/sync/enable chown root shell /sys/kernel/debug/tracing/events/workqueue/enable chown root shell /sys/kernel/debug/tracing/events/regulator/enable chown root shell /sys/kernel/debug/tracing/events/pagecache/enable chmod 0666 /sys/kernel/tracing/events/sync/enable chmod 0666 /sys/kernel/debug/tracing/events/sync/enable chmod 0666 /sys/kernel/tracing/events/workqueue/enable chmod 0666 /sys/kernel/debug/tracing/events/workqueue/enable chmod 0666 /sys/kernel/tracing/events/regulator/enable chmod 0666 /sys/kernel/debug/tracing/events/regulator/enable chmod 0666 /sys/kernel/tracing/events/pagecache/enable chmod 0666 /sys/kernel/debug/tracing/events/pagecache/enable # irq chown root shell /sys/kernel/debug/tracing/events/irq/enable chown root shell /sys/kernel/debug/tracing/events/ipi/enable chmod 0666 /sys/kernel/tracing/events/irq/enable chmod 0666 /sys/kernel/debug/tracing/events/irq/enable chmod 0666 /sys/kernel/tracing/events/ipi/enable chmod 0666 /sys/kernel/debug/tracing/events/ipi/enable # disk chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chown root shell /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chown root shell /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chown root shell /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chown root shell /sys/kernel/debug/tracing/events/block/block_rq_complete/enable chmod 0664 /sys/kernel/debug/tracing/events/sync/enable chmod 0664 /sys/kernel/debug/tracing/events/workqueue/enable chmod 0664 /sys/kernel/debug/tracing/events/regulator/enable chmod 0664 /sys/kernel/debug/tracing/events/pagecache/enable # irq chmod 0664 /sys/kernel/debug/tracing/events/irq/enable chmod 0664 /sys/kernel/debug/tracing/events/ipi/enable # disk chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0664 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0664 /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chmod 0664 /sys/kernel/debug/tracing/events/block/block_rq_complete/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_enter/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_sync_file_exit/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_begin/enable chmod 0666 /sys/kernel/tracing/events/f2fs/f2fs_write_end/enable chmod 0666 /sys/kernel/debug/tracing/events/f2fs/f2fs_write_end/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_begin/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_begin/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_da_write_end/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_da_write_end/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_enter/enable chmod 0666 /sys/kernel/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0666 /sys/kernel/debug/tracing/events/ext4/ext4_sync_file_exit/enable chmod 0666 /sys/kernel/tracing/events/block/block_rq_issue/enable chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_issue/enable chmod 0666 /sys/kernel/tracing/events/block/block_rq_complete/enable chmod 0666 /sys/kernel/debug/tracing/events/block/block_rq_complete/enable
cmds/dumpstate/dumpstate.cpp +22 −25 Original line number Diff line number Diff line Loading @@ -657,12 +657,18 @@ static int dump_stat_from_fd(const char *title __unused, const char *path, int f return 0; } /* timeout in ms */ static unsigned long logcat_timeout(const char *name) { log_id_t id = android_name_to_log_id(name); static const long MINIMUM_LOGCAT_TIMEOUT_MS = 50000; /* timeout in ms to read a list of buffers */ static unsigned long logcat_timeout(const std::vector<std::string>& buffers) { unsigned long timeout_ms = 0; for (const auto& buffer : buffers) { log_id_t id = android_name_to_log_id(buffer.c_str()); unsigned long property_size = __android_logger_get_buffer_size(id); /* Engineering margin is ten-fold our guess */ return 10 * (property_size + worst_write_perf) / worst_write_perf; timeout_ms += 10 * (property_size + worst_write_perf) / worst_write_perf; } return timeout_ms > MINIMUM_LOGCAT_TIMEOUT_MS ? timeout_ms : MINIMUM_LOGCAT_TIMEOUT_MS; } void Dumpstate::PrintHeader() const { Loading Loading @@ -831,13 +837,8 @@ static void DoKmsg() { } } static const long MINIMUM_LOGCAT_TIMEOUT_MS = 50000; static void DoKernelLogcat() { unsigned long timeout_ms = logcat_timeout("kernel"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } unsigned long timeout_ms = logcat_timeout({"kernel"}); RunCommand( "KERNEL LOG", {"logcat", "-b", "kernel", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, Loading @@ -848,25 +849,21 @@ static void DoLogcat() { unsigned long timeout_ms; // DumpFile("EVENT LOG TAGS", "/etc/event-log-tags"); // calculate timeout timeout_ms = logcat_timeout("main") + logcat_timeout("system") + logcat_timeout("crash"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"main", "system", "crash"}); RunCommand("SYSTEM LOG", {"logcat", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout("events"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"events"}); RunCommand( "EVENT LOG", {"logcat", "-b", "events", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout("radio"); if (timeout_ms < MINIMUM_LOGCAT_TIMEOUT_MS) { timeout_ms = MINIMUM_LOGCAT_TIMEOUT_MS; } timeout_ms = logcat_timeout({"stats"}); RunCommand( "STATS LOG", {"logcat", "-b", "stats", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, CommandOptions::WithTimeoutInMs(timeout_ms).Build()); timeout_ms = logcat_timeout({"radio"}); RunCommand( "RADIO LOG", {"logcat", "-b", "radio", "-v", "threadtime", "-v", "printable", "-v", "uid", "-d", "*:v"}, Loading Loading @@ -1136,7 +1133,7 @@ static void DumpHals() { } RunCommandToFd(fd, "", {"lshal", "debug", interface}, {"lshal", "debug", "-E", interface}, CommandOptions::WithTimeout(2).AsRootIfAvailable().Build()); bool empty = 0 == lseek(fd, 0, SEEK_END); Loading
cmds/installd/dexopt.cpp +10 −3 Original line number Diff line number Diff line Loading @@ -217,7 +217,7 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd const char* input_file_name, const char* output_file_name, int swap_fd, const char* instruction_set, const char* compiler_filter, bool debuggable, bool post_bootcomplete, bool background_job_compile, int profile_fd, const char* class_loader_context, int target_sdk_version) { const char* class_loader_context, int target_sdk_version, bool disable_hidden_api_checks) { static const unsigned int MAX_INSTRUCTION_SET_LEN = 7; if (strlen(instruction_set) >= MAX_INSTRUCTION_SET_LEN) { Loading Loading @@ -443,7 +443,8 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd + (have_dex2oat_large_app_threshold ? 1 : 0) + (disable_cdex ? 1 : 0) + (generate_minidebug_info ? 1 : 0) + (target_sdk_version != 0 ? 2 : 0)]; + (target_sdk_version != 0 ? 2 : 0) + (disable_hidden_api_checks ? 2 : 0)]; int i = 0; argv[i++] = dex2oat_bin; argv[i++] = zip_fd_arg; Loading Loading @@ -517,6 +518,10 @@ static void run_dex2oat(int zip_fd, int oat_fd, int input_vdex_fd, int output_vd argv[i++] = RUNTIME_ARG; argv[i++] = target_sdk_version_arg; } if (disable_hidden_api_checks) { argv[i++] = RUNTIME_ARG; argv[i++] = "-Xno-hidden-api-checks"; } // Do not add after dex2oat_flags, they should override others for debugging. argv[i] = NULL; Loading Loading @@ -1801,6 +1806,7 @@ int dexopt(const char* dex_path, uid_t uid, const char* pkgname, const char* ins bool profile_guided = (dexopt_flags & DEXOPT_PROFILE_GUIDED) != 0; bool is_secondary_dex = (dexopt_flags & DEXOPT_SECONDARY_DEX) != 0; bool background_job_compile = (dexopt_flags & DEXOPT_IDLE_BACKGROUND_JOB) != 0; bool disable_hidden_api_checks = (dexopt_flags & DEXOPT_DISABLE_HIDDEN_API_CHECKS) != 0; // Check if we're dealing with a secondary dex file and if we need to compile it. std::string oat_dir_str; Loading Loading @@ -1897,7 +1903,8 @@ int dexopt(const char* dex_path, uid_t uid, const char* pkgname, const char* ins background_job_compile, reference_profile_fd.get(), class_loader_context, target_sdk_version); target_sdk_version, disable_hidden_api_checks); _exit(68); /* only get here on exec failure */ } else { int res = wait_child(pid); Loading