Skip to content

Commit a929b50

Browse files
authored
perfetto: add option to disable ext descriptor and use in report test (#5335)
This CL adds an option, similar to the other builtin data sources, to disable dumping the extension descriptor into the trace. We then use this in the reporter CTS test which is currently failing because the extension descriptor is causing the trace to be too big.
1 parent c3cc182 commit a929b50

File tree

10 files changed

+2262
-2142
lines changed

10 files changed

+2262
-2142
lines changed

include/perfetto/public/protos/config/trace_config.pzc.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -640,6 +640,11 @@ PERFETTO_PB_FIELD(perfetto_protos_TraceConfig_BuiltinDataSource,
640640
bool,
641641
disable_chunk_usage_histograms,
642642
8);
643+
PERFETTO_PB_FIELD(perfetto_protos_TraceConfig_BuiltinDataSource,
644+
VARINT,
645+
bool,
646+
disable_extension_descriptors,
647+
9);
643648

644649
PERFETTO_PB_MSG(perfetto_protos_TraceConfig_DataSource);
645650
PERFETTO_PB_FIELD(perfetto_protos_TraceConfig_DataSource,

include/perfetto/public/protos/trace/interned_data/interned_data.pzc.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ PERFETTO_PB_MSG_DECL(perfetto_protos_EventCategory);
3434
PERFETTO_PB_MSG_DECL(perfetto_protos_EventName);
3535
PERFETTO_PB_MSG_DECL(perfetto_protos_Frame);
3636
PERFETTO_PB_MSG_DECL(perfetto_protos_HistogramName);
37+
PERFETTO_PB_MSG_DECL(perfetto_protos_InternedGpuCounterDescriptor);
3738
PERFETTO_PB_MSG_DECL(perfetto_protos_InternedGpuRenderStageSpecification);
3839
PERFETTO_PB_MSG_DECL(perfetto_protos_InternedGraphicsContext);
3940
PERFETTO_PB_MSG_DECL(perfetto_protos_InternedString);
@@ -238,5 +239,10 @@ PERFETTO_PB_FIELD(perfetto_protos_InternedData,
238239
perfetto_protos_AndroidJobName,
239240
android_job_name,
240241
44);
242+
PERFETTO_PB_FIELD(perfetto_protos_InternedData,
243+
MSG,
244+
perfetto_protos_InternedGpuCounterDescriptor,
245+
gpu_counter_descriptors,
246+
47);
241247

242248
#endif // INCLUDE_PERFETTO_PUBLIC_PROTOS_TRACE_INTERNED_DATA_INTERNED_DATA_PZC_H_

include/perfetto/public/protos/trace/trace_packet.pzc.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ PERFETTO_PB_MSG_DECL(perfetto_protos_GenericKernelProcessTree);
5656
PERFETTO_PB_MSG_DECL(perfetto_protos_GenericKernelTaskRenameEvent);
5757
PERFETTO_PB_MSG_DECL(perfetto_protos_GenericKernelTaskStateEvent);
5858
PERFETTO_PB_MSG_DECL(perfetto_protos_GpuCounterEvent);
59+
PERFETTO_PB_MSG_DECL(perfetto_protos_GpuInfo);
5960
PERFETTO_PB_MSG_DECL(perfetto_protos_GpuLog);
6061
PERFETTO_PB_MSG_DECL(perfetto_protos_GpuMemTotalEvent);
6162
PERFETTO_PB_MSG_DECL(perfetto_protos_GpuRenderStageEvent);
@@ -402,6 +403,11 @@ PERFETTO_PB_FIELD(perfetto_protos_TracePacket,
402403
perfetto_protos_AndroidAflags,
403404
android_aflags,
404405
127);
406+
PERFETTO_PB_FIELD(perfetto_protos_TracePacket,
407+
MSG,
408+
perfetto_protos_GpuInfo,
409+
gpu_info,
410+
128);
405411
PERFETTO_PB_FIELD(perfetto_protos_TracePacket,
406412
MSG,
407413
perfetto_protos_ModuleSymbols,

protos/perfetto/config/perfetto_config.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4695,6 +4695,9 @@ message TraceConfig {
46954695

46964696
// Disables the reporting of per-trace-writer histograms in TraceStats.
46974697
optional bool disable_chunk_usage_histograms = 8;
4698+
4699+
// Disable emitting extension descriptors into the trace.
4700+
optional bool disable_extension_descriptors = 9;
46984701
}
46994702
optional BuiltinDataSource builtin_data_sources = 20;
47004703

protos/perfetto/config/trace_config.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,9 @@ message TraceConfig {
172172

173173
// Disables the reporting of per-trace-writer histograms in TraceStats.
174174
optional bool disable_chunk_usage_histograms = 8;
175+
176+
// Disable emitting extension descriptors into the trace.
177+
optional bool disable_extension_descriptors = 9;
175178
}
176179
optional BuiltinDataSource builtin_data_sources = 20;
177180

protos/perfetto/trace/perfetto_trace.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4695,6 +4695,9 @@ message TraceConfig {
46954695

46964696
// Disables the reporting of per-trace-writer histograms in TraceStats.
46974697
optional bool disable_chunk_usage_histograms = 8;
4698+
4699+
// Disable emitting extension descriptors into the trace.
4700+
optional bool disable_extension_descriptors = 9;
46984701
}
46994702
optional BuiltinDataSource builtin_data_sources = 20;
47004703

python/perfetto/protos/perfetto/trace/perfetto_trace_pb2.py

Lines changed: 2143 additions & 2131 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

python/perfetto/protos/perfetto/trace/perfetto_trace_pb2.pyi

Lines changed: 88 additions & 10 deletions
Large diffs are not rendered by default.

src/tracing/service/tracing_service_impl.cc

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2676,7 +2676,10 @@ std::vector<TracePacket> TracingServiceImpl::ReadBuffers(
26762676
}
26772677
if (!tracing_session->did_emit_initial_packets) {
26782678
EmitUuid(tracing_session, &packets);
2679-
EmitExtensionDescriptors(tracing_session, &packets);
2679+
if (!tracing_session->config.builtin_data_sources()
2680+
.disable_extension_descriptors()) {
2681+
EmitExtensionDescriptors(tracing_session, &packets);
2682+
}
26802683
EmitTraceProvenance(tracing_session, &packets);
26812684
if (!tracing_session->config.builtin_data_sources().disable_system_info()) {
26822685
EmitSystemInfo(&packets);

test/cts/reporter/reporter_test_cts.cc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ TEST(PerfettoReporterTest, TestEndToEndReport) {
4949
builtin->set_disable_system_info(true);
5050
builtin->set_disable_service_events(true);
5151
builtin->set_disable_chunk_usage_histograms(true);
52+
builtin->set_disable_extension_descriptors(true);
5253

5354
auto* ds_config = trace_config.add_data_sources()->mutable_config();
5455
ds_config->set_name("android.perfetto.FakeProducer");

0 commit comments

Comments
 (0)