aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Rostedt (Google) <rostedt@goodmis.org>2023-05-30 00:19:51 -0400
committerSteven Rostedt (Google) <rostedt@goodmis.org>2023-05-30 00:25:29 -0400
commit6775d2323975210d469e4f5a0f6e2b007a1e5bf7 (patch)
treec67c435fc4bc55214a22437d37cf1e798bf77f4e
parent5a1a01ea7319d2e286b51d6b58876c95a04fd0bd (diff)
downloadlibtracefs-6775d2323975210d469e4f5a0f6e2b007a1e5bf7.tar.gz
libtracefs: Do not use hwlat tracer and fdb_delete event for tests
The tracefs_reset() test required the hwlat tracer and the fdb_delete event to exist on the system to succeed. But that trace and event are uncommon, and will cause a failure when they are not part of the system. Instead, pick the first tracer returned by tracefs_tracers() and also the "sched_switch" event as that will make the test more robust with different kernel configs. Link: https://lore.kernel.org/linux-trace-devel/20230530001951.2070c879@rorschach.local.home Cc: Tzvetomir Stoyanov <tz.stoyanov@gmail.com> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
-rw-r--r--utest/tracefs-utest.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/utest/tracefs-utest.c b/utest/tracefs-utest.c
index 47f65cb..47fc957 100644
--- a/utest/tracefs-utest.c
+++ b/utest/tracefs-utest.c
@@ -1768,6 +1768,7 @@ static void test_instance_reset(void)
{
struct tracefs_instance *instance = NULL;
const char *name = get_rand_str();
+ char **tracers;
CU_TEST(tracefs_instance_exists(name) == false);
instance = tracefs_instance_create(name);
@@ -1775,8 +1776,13 @@ static void test_instance_reset(void)
CU_TEST(test_instance_check_default_state(instance) == true);
- CU_TEST(tracefs_tracer_set(instance, TRACEFS_TRACER_HWLAT) == 0);
- CU_TEST(tracefs_event_enable(instance, "bridge", "fdb_delete") == 0);
+ tracers = tracefs_tracers(NULL);
+ CU_TEST(tracers != NULL);
+ if (tracers) {
+ CU_TEST(tracefs_tracer_set(instance, TRACEFS_TRACER_CUSTOM, tracers[0]) == 0);
+ tracefs_list_free(tracers);
+ }
+ CU_TEST(tracefs_event_enable(instance, "sched", "sched_switch") == 0);
CU_TEST(tracefs_instance_file_write(instance, "set_ftrace_pid", "5") > 0);
CU_TEST(tracefs_instance_file_write(instance, "trace_clock", "global") > 0);
CU_TEST(tracefs_instance_file_write(instance, "set_event_pid", "5") > 0);
@@ -1785,9 +1791,9 @@ static void test_instance_reset(void)
CU_TEST(tracefs_instance_file_write(instance, "set_ftrace_notrace",
"schedule:stacktrace") > 0);
CU_TEST(tracefs_instance_file_write(instance, "tracing_cpumask", "0f") > 0);
- CU_TEST(tracefs_instance_file_write(instance, "events/syscalls/sys_exit_read/trigger",
+ CU_TEST(tracefs_event_file_write(instance, "syscalls", "sys_exit_read", "trigger",
"enable_event:kmem:kmalloc:1") > 0);
- CU_TEST(tracefs_instance_file_write(instance, "events/bridge/fdb_delete/filter",
+ CU_TEST(tracefs_event_file_write(instance, "sched", "sched_switch", "filter",
"common_pid == 5") > 0);
CU_TEST(test_instance_check_default_state(instance) == false);