diff --git a/private/surfaceflinger.te b/private/surfaceflinger.te
index 0aff9f5052489e55554b85df73847cf1124048f1..3808c838f3169d5a149363e657d1867cc1bc0d63 100644
--- a/private/surfaceflinger.te
+++ b/private/surfaceflinger.te
@@ -9,7 +9,6 @@ read_runtime_log_tags(surfaceflinger)
 
 # Perform HwBinder IPC.
 hwbinder_use(surfaceflinger)
-binder_call(surfaceflinger, hal_graphics_allocator)
 hal_client_domain(surfaceflinger, hal_graphics_allocator)
 binder_call(surfaceflinger, hal_graphics_composer)
 hal_client_domain(surfaceflinger, hal_graphics_composer)
diff --git a/public/hal_graphics_allocator.te b/public/hal_graphics_allocator.te
index 45999bef2e67b16ffb926a067f5ccacac99898a9..e434751490d300503cc49e9dc83e9eb112e8667c 100644
--- a/public/hal_graphics_allocator.te
+++ b/public/hal_graphics_allocator.te
@@ -1,3 +1,6 @@
+# HwBinder IPC from client to server
+binder_call(hal_graphics_allocator_client, hal_graphics_allocator_server)
+
 # GPU device access
 allow hal_graphics_allocator gpu_device:chr_file rw_file_perms;
 allow hal_graphics_allocator ion_device:chr_file r_file_perms;