tu/perfetto: Init perfetto datasources once

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37465>
This commit is contained in:
Danylo Piliaiev 2025-09-22 12:49:27 +02:00 committed by Marge Bot
parent 0621d5cd39
commit fce9dbc493

View file

@ -355,14 +355,16 @@ PERFETTO_DEFINE_DATA_SOURCE_STATIC_MEMBERS(TuMemoryDataSource);
extern "C" {
#endif
static once_flag tu_perfetto_init_once_flag = ONCE_FLAG_INIT;
void
tu_perfetto_init(void)
tu_perfetto_init_once()
{
{
perfetto::DataSourceDescriptor dsd;
perfetto::DataSourceDescriptor dsd;
#if DETECT_OS_ANDROID
// Android tooling expects this data source name
dsd.set_name("gpu.renderstages");
// Android tooling expects this data source name
dsd.set_name("gpu.renderstages");
#else
dsd.set_name("gpu.renderstages.msm");
#endif
@ -370,12 +372,18 @@ tu_perfetto_init(void)
}
{
perfetto::DataSourceDescriptor dsd;
dsd.set_name("gpu.memory.msm");
TuMemoryDataSource::Register(dsd);
perfetto::DataSourceDescriptor dsd;
dsd.set_name("gpu.memory.msm");
TuMemoryDataSource::Register(dsd);
}
}
void
tu_perfetto_init(void)
{
call_once(&tu_perfetto_init_once_flag, tu_perfetto_init_once);
}
uint64_t
tu_perfetto_begin_submit()
{