xref: /aosp_15_r20/system/sepolicy/private/prefetch.te (revision e4a36f4174b17bbab9dc043f4a65dc8d87377290)
1*e4a36f41SAndroid Build Coastguard Workertype prefetch, coredomain, domain;
2*e4a36f41SAndroid Build Coastguard Workertype prefetch_exec, exec_type, file_type, system_file_type;
3*e4a36f41SAndroid Build Coastguard Worker
4*e4a36f41SAndroid Build Coastguard Workerinit_daemon_domain(prefetch)
5*e4a36f41SAndroid Build Coastguard Worker
6*e4a36f41SAndroid Build Coastguard Worker# Allow prefetch to start recording by enabling tracing event under
7*e4a36f41SAndroid Build Coastguard Worker# /sys/kernel/tracing/events/filemap/mm_filemap_add_to_page_cache
8*e4a36f41SAndroid Build Coastguard Workerallow prefetch debugfs_tracing_instances:dir create_dir_perms;
9*e4a36f41SAndroid Build Coastguard Workerallow prefetch debugfs_tracing_instances:file rw_file_perms;
10*e4a36f41SAndroid Build Coastguard Worker
11*e4a36f41SAndroid Build Coastguard Worker# Allow to read/write/create/delete to storage prefetch record files
12*e4a36f41SAndroid Build Coastguard Workerallow prefetch metadata_file:dir search;
13*e4a36f41SAndroid Build Coastguard Workerallow prefetch prefetch_metadata_file:dir rw_dir_perms;
14*e4a36f41SAndroid Build Coastguard Workerallow prefetch prefetch_metadata_file:file create_file_perms;
15*e4a36f41SAndroid Build Coastguard Worker
16*e4a36f41SAndroid Build Coastguard Workerget_prop(prefetch, prefetch_boot_prop);
17*e4a36f41SAndroid Build Coastguard Workerset_prop(prefetch, prefetch_service_prop);
18*e4a36f41SAndroid Build Coastguard Worker
19*e4a36f41SAndroid Build Coastguard Worker# Disallow other domains controlling prefetch service.
20*e4a36f41SAndroid Build Coastguard Workerneverallow {
21*e4a36f41SAndroid Build Coastguard Worker  domain
22*e4a36f41SAndroid Build Coastguard Worker  -init
23*e4a36f41SAndroid Build Coastguard Worker  -shell
24*e4a36f41SAndroid Build Coastguard Worker} ctl_prefetch_prop:property_service set;
25