diff --git a/private/haldomain.te b/private/haldomain.te
index a8fa1a2165d6b907ecd2ed6e92ac4d20e52172a9..2700940ec156aceefeb70f91a3cd3565a69637e9 100644
--- a/private/haldomain.te
+++ b/private/haldomain.te
@@ -3,3 +3,6 @@
 ###
 
 hwbinder_use(haldomain)
+
+# find passthrough hals
+allow haldomain system_file:dir r_dir_perms;
diff --git a/public/hal_camera.te b/public/hal_camera.te
index e412a4d8bdf86f6322c235ebbca9579ec7099d8e..b879c980865eb973dc8544cc9d714c4a6d47ac89 100644
--- a/public/hal_camera.te
+++ b/public/hal_camera.te
@@ -1,8 +1,6 @@
 hwbinder_use(hal_camera)
 binder_call(hal_camera, cameraserver)
 
-allow hal_camera system_file:dir { open read };
-
 # access /data/misc/camera
 allow hal_camera camera_data_file:dir create_dir_perms;
 allow hal_camera camera_data_file:file create_file_perms;
diff --git a/public/hal_fingerprint.te b/public/hal_fingerprint.te
index db0fc6d77e75fe4357587b1ae61a02def064d1b4..aa5bf2bef152a49207c87fe162fe439659d232ca 100644
--- a/public/hal_fingerprint.te
+++ b/public/hal_fingerprint.te
@@ -1,6 +1,3 @@
-# Scan through /system/lib64/hw looking for installed HALs
-allow hal_fingerprint system_file:dir r_dir_perms;
-
 # allow HAL module to read dir contents
 allow hal_fingerprint fingerprintd_data_file:file create_file_perms;