diff --git a/private/traced.te b/private/traced.te
index 531ecc29cad320e0dd9a511d31b2bdc5109b873e..b6d03117c87ee3f67c8c9a71d7e39e9373574d87 100644
--- a/private/traced.te
+++ b/private/traced.te
@@ -1,10 +1,14 @@
 # Perfetto user-space tracing daemon (unprivileged)
-type traced, domain, coredomain;
+type traced, domain, coredomain, mlstrustedsubject;
 type traced_exec, exec_type, file_type;
 
 # Allow init to exec the daemon.
 init_daemon_domain(traced)
 
+# Allow apps in other MLS contexts (for multi-user) to access
+# share memory buffers created by traced.
+typeattribute traced_tmpfs mlstrustedobject;
+
 # Allow traced to start with a lower scheduling class and change
 # class accordingly to what defined in the config provided by
 # the privileged process that controls it.
diff --git a/public/file.te b/public/file.te
index 0aa7ece238be2f92a1e5558588c39e116153a36c..27ee0dcaa741839b40cfe9a627fcad45f17f3946 100644
--- a/public/file.te
+++ b/public/file.te
@@ -327,7 +327,7 @@ type system_ndebug_socket, file_type, data_file_type, core_data_file_type, cored
 type tombstoned_crash_socket, file_type, coredomain_socket, mlstrustedobject;
 type tombstoned_java_trace_socket, file_type, mlstrustedobject;
 type tombstoned_intercept_socket, file_type, coredomain_socket;
-type traced_producer_socket, file_type, coredomain_socket;
+type traced_producer_socket, file_type, coredomain_socket, mlstrustedobject;
 type traced_consumer_socket, file_type, coredomain_socket;
 type uncrypt_socket, file_type, coredomain_socket;
 type vold_socket, file_type, coredomain_socket;