Refactor the syscall table into a shared location
The ftrace trace processor had this mapping in order to convert the
syscall ids found in ftrace logs to proper names. A new feature is being
added that allows filtering syscalls during tracing. It will need to
convert string names into numbers within traced_probes.
Test: ran perfetto_unittest
Change-Id: I6198c3f33112d41db792f7e52641d9309a68aa7c
diff --git a/Android.bp b/Android.bp
index b41580b..81a3247 100644
--- a/Android.bp
+++ b/Android.bp
@@ -554,6 +554,7 @@
":perfetto_src_ipc_common",
":perfetto_src_ipc_host",
":perfetto_src_kallsyms_kallsyms",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_protozero_filtering_bytecode_common",
":perfetto_src_protozero_filtering_bytecode_parser",
":perfetto_src_protozero_filtering_message_filter",
@@ -1165,6 +1166,7 @@
":perfetto_src_ipc_host",
":perfetto_src_ipc_perfetto_ipc",
":perfetto_src_kallsyms_kallsyms",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_protozero_filtering_bytecode_common",
":perfetto_src_protozero_filtering_bytecode_generator",
":perfetto_src_protozero_filtering_bytecode_parser",
@@ -1454,6 +1456,7 @@
":perfetto_src_ipc_host",
":perfetto_src_ipc_perfetto_ipc",
":perfetto_src_kallsyms_kallsyms",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_protozero_filtering_bytecode_common",
":perfetto_src_protozero_filtering_bytecode_parser",
":perfetto_src_protozero_filtering_message_filter",
@@ -1928,6 +1931,7 @@
":perfetto_src_ipc_host",
":perfetto_src_ipc_perfetto_ipc",
":perfetto_src_kallsyms_kallsyms",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_profiling_common_callstack_trie",
":perfetto_src_profiling_common_interner",
":perfetto_src_profiling_common_interning_output",
@@ -8106,6 +8110,14 @@
],
}
+// GN: //src/kernel_utils:syscall_table
+filegroup {
+ name: "perfetto_src_kernel_utils_syscall_table",
+ srcs: [
+ "src/kernel_utils/syscall_table.cc",
+ ],
+}
+
// GN: //src/perfetto_cmd:gen_cc_config_descriptor
genrule {
name: "perfetto_src_perfetto_cmd_gen_cc_config_descriptor",
@@ -10773,6 +10785,7 @@
":perfetto_src_ipc_unittests",
":perfetto_src_kallsyms_kallsyms",
":perfetto_src_kallsyms_unittests",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_perfetto_cmd_perfetto_cmd",
":perfetto_src_perfetto_cmd_protos_cpp_gen",
":perfetto_src_perfetto_cmd_trigger_producer",
@@ -11156,6 +11169,7 @@
":perfetto_src_base_http_http",
":perfetto_src_base_unix_socket",
":perfetto_src_base_version",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_profiling_deobfuscator",
":perfetto_src_profiling_symbolizer_symbolize_database",
":perfetto_src_profiling_symbolizer_symbolizer",
@@ -11334,6 +11348,7 @@
":perfetto_protos_third_party_pprof_zero_gen",
":perfetto_src_base_base",
":perfetto_src_base_version",
+ ":perfetto_src_kernel_utils_syscall_table",
":perfetto_src_profiling_deobfuscator",
":perfetto_src_profiling_symbolizer_symbolize_database",
":perfetto_src_profiling_symbolizer_symbolizer",