1*e4a36f41SAndroid Build Coastguard Workertypeattribute traceur_app coredomain; 2*e4a36f41SAndroid Build Coastguard Worker 3*e4a36f41SAndroid Build Coastguard Workerapp_domain(traceur_app); 4*e4a36f41SAndroid Build Coastguard Workerallow traceur_app debugfs_tracing:file rw_file_perms; 5*e4a36f41SAndroid Build Coastguard Workerallow traceur_app debugfs_tracing_debug:dir r_dir_perms; 6*e4a36f41SAndroid Build Coastguard Worker 7*e4a36f41SAndroid Build Coastguard Workeruserdebug_or_eng(` 8*e4a36f41SAndroid Build Coastguard Worker allow traceur_app debugfs_tracing_debug:file rw_file_perms; 9*e4a36f41SAndroid Build Coastguard Worker') 10*e4a36f41SAndroid Build Coastguard Worker 11*e4a36f41SAndroid Build Coastguard Workerallow traceur_app trace_data_file:file create_file_perms; 12*e4a36f41SAndroid Build Coastguard Workerallow traceur_app trace_data_file:dir rw_dir_perms; 13*e4a36f41SAndroid Build Coastguard Workerallow traceur_app wm_trace_data_file:dir rw_dir_perms; 14*e4a36f41SAndroid Build Coastguard Workerallow traceur_app wm_trace_data_file:file { getattr r_file_perms unlink }; 15*e4a36f41SAndroid Build Coastguard Workerallow traceur_app atrace_exec:file rx_file_perms; 16*e4a36f41SAndroid Build Coastguard Worker 17*e4a36f41SAndroid Build Coastguard Worker# To exec the perfetto cmdline client and pass it the trace config on 18*e4a36f41SAndroid Build Coastguard Worker# stdint through a pipe. 19*e4a36f41SAndroid Build Coastguard Workerallow traceur_app perfetto_exec:file rx_file_perms; 20*e4a36f41SAndroid Build Coastguard Worker 21*e4a36f41SAndroid Build Coastguard Worker# Allow to access traced's privileged consumer socket. 22*e4a36f41SAndroid Build Coastguard Workerunix_socket_connect(traceur_app, traced_consumer, traced) 23*e4a36f41SAndroid Build Coastguard Worker 24*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app debugfs_tracing_debug:file audit_access; 25*e4a36f41SAndroid Build Coastguard Worker 26*e4a36f41SAndroid Build Coastguard Workerset_prop(traceur_app, debug_prop) 27*e4a36f41SAndroid Build Coastguard Worker 28*e4a36f41SAndroid Build Coastguard Workerallow traceur_app servicemanager:service_manager list; 29*e4a36f41SAndroid Build Coastguard Workerallow traceur_app hwservicemanager:hwservice_manager list; 30*e4a36f41SAndroid Build Coastguard Worker 31*e4a36f41SAndroid Build Coastguard Workerallow traceur_app { 32*e4a36f41SAndroid Build Coastguard Worker service_manager_type 33*e4a36f41SAndroid Build Coastguard Worker -apex_service 34*e4a36f41SAndroid Build Coastguard Worker -dnsresolver_service 35*e4a36f41SAndroid Build Coastguard Worker -gatekeeper_service 36*e4a36f41SAndroid Build Coastguard Worker -incident_service 37*e4a36f41SAndroid Build Coastguard Worker -installd_service 38*e4a36f41SAndroid Build Coastguard Worker -lpdump_service 39*e4a36f41SAndroid Build Coastguard Worker -mdns_service 40*e4a36f41SAndroid Build Coastguard Worker -netd_service 41*e4a36f41SAndroid Build Coastguard Worker -virtual_touchpad_service 42*e4a36f41SAndroid Build Coastguard Worker -vold_service 43*e4a36f41SAndroid Build Coastguard Worker -default_android_service 44*e4a36f41SAndroid Build Coastguard Worker}:service_manager find; 45*e4a36f41SAndroid Build Coastguard Worker 46*e4a36f41SAndroid Build Coastguard Worker# Allow traceur_app to use atrace HAL 47*e4a36f41SAndroid Build Coastguard Workerhal_client_domain(traceur_app, hal_atrace) 48*e4a36f41SAndroid Build Coastguard Worker 49*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app service_manager_type:service_manager find; 50*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app hwservice_manager_type:hwservice_manager find; 51*e4a36f41SAndroid Build Coastguard Workerdontaudit traceur_app domain:binder call; 52