# Global OWNERS that can approve Perfetto changes.
# Please look first at OWNERS in the various subdirectories before falling back
# on this, as the former tend to be more brain-cache-hot.

# Perfetto tracing internals and API/ABI boundaries.
primiano@google.com
skyostil@google.com

# UI, Ftrace interop, traced_probes, protozero, Android internals.
hjd@google.com

# Trace Processor, metrics, infra.
lalitm@google.com

# Callstack / memory profilers, traced_probes & Linux internals.
ddiproietto@google.com
rsavitski@google.com

# Chromium-related things and tracing SDK.
eseckler@google.com
nuskos@google.com
oysteine@google.com

# Most Android-related metrics.
ilkos@google.com

# fmayer@ left the team. Please try first rsavitski@, ddiproietto@ or primiano@
# and leave fmayer@ as an emergency-only escalation on profilers.
fmayer@google.com

# chromium.org aliases for adding DEPS entries from chromium subprojects to
# third_party/perfetto.
eseckler@chromium.org
nuskos@chromium.org
skyostil@chromium.org
