diff --git a/private/file_contexts b/private/file_contexts
index b4a7087547a6156c5ff398089233605a35766c96..61126eba3eb6dd635f92d2c63c87e38fb6feed59 100644
--- a/private/file_contexts
+++ b/private/file_contexts
@@ -223,6 +223,7 @@
 /system/bin/hw/android\.hardware\.audio@2\.0-service          u:object_r:hal_audio_exec:s0
 /system/bin/hw/android\.hardware\.boot@1\.0-service           u:object_r:hal_boot_exec:s0
 /system/bin/hw/android\.hardware\.light@2\.0-service          u:object_r:hal_light_exec:s0
+/system/bin/hw/android\.hardware\.memtrack@1\.0-service       u:object_r:hal_memtrack_exec:s0
 /system/bin/hw/android\.hardware\.nfc@1\.0-service            u:object_r:hal_nfc_exec:s0
 /system/bin/hw/android\.hardware\.power@1\.0-service          u:object_r:hal_power_exec:s0
 /system/bin/hw/android\.hardware\.vibrator@1\.0-service       u:object_r:hal_vibrator_exec:s0
diff --git a/private/hal_memtrack.te b/private/hal_memtrack.te
new file mode 100644
index 0000000000000000000000000000000000000000..89c7b8e6e84c41f513d6130d251075f5ad8b9c0c
--- /dev/null
+++ b/private/hal_memtrack.te
@@ -0,0 +1,2 @@
+# may be started by init
+init_daemon_domain(hal_memtrack)
diff --git a/public/hal_memtrack.te b/public/hal_memtrack.te
new file mode 100644
index 0000000000000000000000000000000000000000..07c1292386cf8068c2f78df5a9af0100789292bb
--- /dev/null
+++ b/public/hal_memtrack.te
@@ -0,0 +1,6 @@
+# memtrack subsystem
+type hal_memtrack, domain;
+type hal_memtrack_exec, exec_type, file_type;
+
+# hwbinder access
+hwbinder_use(hal_memtrack);
diff --git a/public/system_server.te b/public/system_server.te
index 6bec0aa0f25534de9b3c35b2bee1e91607a57a3f..9c075fbe1603e464061602281a65970e0fb17a4f 100644
--- a/public/system_server.te
+++ b/public/system_server.te
@@ -149,6 +149,7 @@ allow system_server surfaceflinger:unix_stream_socket { read write setopt };
 binder_use(system_server)
 binder_call(system_server, hal_boot)
 binder_call(system_server, hal_light)
+binder_call(system_server, hal_memtrack)
 binder_call(system_server, hal_power)
 binder_call(system_server, hal_vibrator)
 binder_call(system_server, hal_vr)