| # MpDecision service |
| type mpdecision, domain; |
| type mpdecision_exec, exec_type, file_type; |
| |
| init_daemon_domain(mpdecision) |
| |
| allow mpdecision self:capability { net_admin fsetid }; |
| |
| allow mpdecision self:netlink_kobject_uevent_socket create_socket_perms; |
| |
| # Access to /dev/cpu_dma_latency. |
| allow mpdecision latency_device:chr_file w_file_perms; |
| |
| # Create and access to /dev/socket/mpdecision |
| allow mpdecision mpdecision_socket:sock_file rw_file_perms; |
| |
| # Access to /sys/devices/system/cpu/*. |
| allow mpdecision sysfs_devices_system_cpu:file rw_file_perms; |
| |
| # Access to sysfs_thermal nodes. |
| allow mpdecision sysfs_thermal:dir r_dir_perms; |
| allow mpdecision sysfs_thermal:file r_file_perms; |
| |
| # Access to mpctl data files and sockets. |
| allow mpdecision perfd_data_file:dir w_dir_perms; |
| allow mpdecision perfd_data_file:file create_file_perms; |
| allow mpdecision perfd_data_file:sock_file create_file_perms; |
| |
| # Access to some dynamically generated files under /sys/devices/system/cpu/. |
| allow mpdecision sysfs:file write; |
| |
| allow mpdecision self:capability dac_override; |
| |
| allow mpdecision sysfs:file r_file_perms; |
| |
| allow mpdecision proc:file rw_file_perms; |