diff --git a/public/surfaceflinger.te b/public/surfaceflinger.te
index 3bdc97fdab2d8ad2a1c9b8a2c5c5bc222e0f4d51..3f7a583e56b0c0821ee36f5b480a14bc5e5f7280 100644
--- a/public/surfaceflinger.te
+++ b/public/surfaceflinger.te
@@ -61,7 +61,11 @@ allow surfaceflinger tee_device:chr_file rw_file_perms;
 
 # media.player service
 add_service(surfaceflinger, gpu_service)
-add_service(surfaceflinger, surfaceflinger_service)
+
+# do not use add_service() as hal_graphics_composer_default may be the
+# provider as well
+#add_service(surfaceflinger, surfaceflinger_service)
+allow surfaceflinger surfaceflinger_service:service_manager { add find };
 
 allow surfaceflinger mediaserver_service:service_manager find;
 allow surfaceflinger permission_service:service_manager find;
diff --git a/private/hal_graphics_composer_default.te b/vendor/hal_graphics_composer_default.te
similarity index 100%
rename from private/hal_graphics_composer_default.te
rename to vendor/hal_graphics_composer_default.te