# Camera service uses gralloc, gralloc mapper wants to talk to the GPU
# and use debug properties
get_prop(cameraserver, vendor_display_prop)

# It's confirmed that all attempts of access gpu_device by the gralloc mapper
# are not essential, and access denial to it won't break any gralloc mapper
# functionality.
dontaudit cameraserver gpu_device:chr_file rw_file_perms;

# dontaudit unnecessary files in /sys
dontaudit cameraserver sysfs_msm_subsys:dir search;