1# Contains tests for parsing events which are applicable to more than one vertical
2# "area". Generally, events here are of high importance (e.g. sched_switch is tested
3# here is and is used by every embedder of trace processor)
4#
5# Note: It's generally *not* advisable to add tests here. Check the guidance provided by
6# http://perfetto/dev/docs/analysis/trace-processor#diff-tests for choosing which folder
7# to add a new test to.
8
9# TODO(lalitm): some tests here should be moved out of here and into the area folders;
10# they are only here because they predate the modularisation of diff tests.
11
12# Sched
13../../data/android_sched_and_ps.pb ts_desc_filter.sql ts_desc_filter_android_sched_and_ps.out
14
15# Sched reason
16../../data/android_sched_and_ps.pb end_reason_eq.sql android_sched_and_ps_end_reason_eq.out
17../../data/android_sched_and_ps.pb end_reason_neq.sql android_sched_and_ps_end_reason_neq.out
18
19# Sched wakeup
20../../data/android_sched_and_ps.pb sched_wakeup.sql sched_wakeup_android_sched_and_ps.out
21
22# CPU Frequency
23../../data/cpu_counters.pb b120487929.sql cpu_counters_b120487929.out
24
25# Test the filtering of ftrace events before tracing_start.
26ftrace_with_tracing_start.py list_sched_slice_spans.sql ftrace_with_tracing_start_list_sched_slice_spans.out
27
28# Rss stats
29rss_stat_mm_id.py rss_stat.sql rss_stat_mm_id.out
30rss_stat_mm_id_clone.py rss_stat.sql rss_stat_mm_id_clone.out
31rss_stat_mm_id_reuse.py rss_stat.sql rss_stat_mm_id_reuse.out
32rss_stat_legacy.py rss_stat.sql rss_stat_legacy.out
33rss_stat_after_free.py rss_stat_after_free.sql rss_stat_after_free.out
34
35# Memory counters
36../../data/memory_counters.pb args_string_filter_null.sql memory_counters_args_string_filter_null.out
37../../data/memory_counters.pb args_string_is_null.sql memory_counters_args_string_is_null.out
38../../data/memory_counters.pb args_string_is_not_null.sql memory_counters_args_string_is_not_null.out
39../../data/memory_counters.pb b120605557.sql memory_counters_b120605557.out
40../../data/memory_counters.pb global_memory_counter.sql global_memory_counter_memory_counters.out
41ion_stat.textproto ion_stat.sql ion_stat.out
42
43# Scheduling slices from sched_switch events. There are two tests, one for the
44# typical encoding of sched_switch events, and one for the same trace
45# re-encoded in the compact format. The output should be identical apart from
46# the latter having one slice fewer for each cpu (the first compact
47# sched_switch event doesn't start a slice). Six slices in this case.
48../../data/sched_switch_original.pb sched_slices.sql sched_slices_sched_switch_original.out
49../../data/sched_switch_compact.pb sched_slices.sql sched_slices_sched_switch_compact.out
50
51# Decoding of sched_waking events from a trace with compact scheduling events.
52# Verifies the contents of raw & instants tables.
53../../data/compact_sched.pb sched_waking_raw.sql sched_waking_raw_compact_sched.out
54../../data/compact_sched.pb sched_waking_instants.sql sched_waking_instants_compact_sched.out
55
56# Mm Event
57../../data/mm_event.pb mm_event.sql mm_event.out
58
59# Android userspace async slices
60android_async_slice.textproto process_track_slices.sql process_track_slices_android_async_slice.out
61
62# Check the systrace conversion code in the raw table.
63# Print events
64../../data/lmk_userspace.pb print_systrace.sql print_systrace_lmk_userspace.out
65kernel_tmw_counter.textproto thread_counter_and_track.sql kernel_tmw_counter_thread_counter_and_track.out
66# Unsigned integers
67print_systrace_unsigned.py print_systrace.sql print_systrace_unsigned.out
68
69# Parsing systrace files
70../../data/systrace.html systrace_html.sql systrace_html.out
71../../data/trailing_empty.systrace sched_smoke.sql sched_smoke_trailing_empty.out
72
73# Check error handling when parsing print events.
74bad_print.textproto list_slices.sql bad_print_textproto_list_slices.out
75bad_print.systrace list_slices.sql bad_print_systrace_list_slices.out
76
77# Match legacy Catapult behaviour when we see multiple S events b2b with the same cookie
78# name and upid.
79android_b2b_async_begin.textproto list_slices.sql android_b2b_async_begin_list_slices.out
80
81# LMK handling
82kernel_lmk.py lmk.sql lmk_kernel_lmk.out
83../../data/lmk_userspace.pb lmk.sql lmk_userspace_lmk.out
84../common/oom_kill.textproto oom_kill.sql oom_kill.out
85
86# Logcat
87../../data/android_log.pb android_log_counts.sql android_log_counts.out
88../../data/android_log.pb android_log_msgs.sql android_log_msgs.out
89../../data/android_log_ring_buffer_mode.pb android_log_ring_buffer_mode.sql android_log_ring_buffer_mode.out
90
91# Oom Score
92synth_oom.py oom_query.sql synth_oom_oom_query.out
93../../data/process_stats_poll.pb oom_score_poll.sql process_stats_poll_oom_score.out
94
95# Stats
96../../data/android_sched_and_ps.pb stats.sql android_sched_and_ps_stats.out
97
98# Syscalls
99syscall.py sys.sql sys_syscall.out
100
101# Thread time_in_state
102thread_time_in_state.textproto thread_time_in_state.sql thread_time_in_state.out
103thread_time_in_state_event.py thread_time_in_state_event.sql thread_time_in_state_event.out
104thread_time_in_state.textproto android_thread_time_in_state android_thread_time_in_state.out
105thread_time_in_state_unknown.textproto android_thread_time_in_state android_thread_time_in_state_unknown.out
106
107# Initial display state
108initial_display_state.textproto initial_display_state.sql initial_display_state.out
109
110# Config & metadata
111config_metadata.textproto metadata.sql config_metadata.out
112trigger_packet_trace.textproto triggers_packets.sql triggers_packets_trigger_packet_trace.out
113chrome_metadata.textproto chrome_metadata.sql chrome_metadata.out
114
115# CPU info
116cpu_info.textproto cpu.sql cpu.out
117cpu_info.textproto cpu_freq.sql cpu_freq.out
118
119# Trace size
120../../data/android_sched_and_ps.pb trace_size.sql android_sched_and_ps_trace_size.out
121
122# Package list handling
123android_package_list.py android_package_list android_package_list.out
124
125# Ensures process -> package matching works as expected.
126process_metadata_matching.textproto process_metadata_matching.sql process_metadata_matching.out
127
128# Flow events importing from json
129flow_events_json_v1.json flow_events.sql flow_events_json_v1.out
130flow_events_json_v2.json flow_events.sql flow_events_json_v2.out
131
132# Importing displayTimeUnit
133../../data/display_time_unit.json slices.sql display_time_unit_slices.out
134
135# Parsing sched_blocked_reason
136sched_blocked_proto.py sched_blocked_reason.sql sched_blocked_proto_sched_blocked_reason.out
137sched_blocked_systrace.systrace sched_blocked_reason.sql sched_blocked_systrace_sched_blocked_reason.out
138
139# Kernel symbolization
140sched_blocked_reason_symbolized.textproto sched_blocked_reason_function.sql sched_blocked_reason_symbolized_sched_blocked_reason_function.out
141sched_blocked_reason_symbolized.textproto ../common/to_systrace.sql sched_blocked_reason_symbolized_to_systrace.out
142
143# Floating point numbers
144../../data/decimal_timestamp.json slices.sql decimal_timestamp_slices.out
145