# Multi layer tracing *** note **This doc is WIP**, stay tuned. <!-- TODO(primiano): write multi-layer tracing doc. --> *** This doc should explain how is possible to compose a hierarchy of tracing services. The concrete use case is combining multiprocess tracing in Chromium with Android's tracing daemons (think to hypervisors' nested page tables). The TL;DR of the trick is: - ABI stability of the [shared_memory_abi.h](/include/perfetto/tracing/core/shared_memory_abi.h) - ABI stability of the IPC surface. The tracing service in chromium should proxy Producer connections (adapting Mojo to our IPC) towards the Android's `traced` service, passing back the shared memory buffers to the real producers (the Chrome child process). Conceptually it is simple and straightforward, requires *some* care to implement correctly ownership of the shared memory buffers though.