Re: [PATCH] libtracefs: Destroy synthetic and eprobes before other events
Metin Kaya <[email protected]>
| Newsgroups | org.kernel.vger.linux-trace-devel |
|---|---|
| Message-ID | <[email protected]> |
On 17/10/2024 9:01 pm, Steven Rostedt wrote: > On Thu, 17 Oct 2024 09:38:35 +0100 > Metin Kaya <[email protected]> wrote: > >> I see one more failure in this section of unit tests: >> >> Test: tracefs_iterate_snapshot_events API ...FAILED >> 1. tracefs-utest.c:235 - ret == sizeof(struct test_sample) >> 2. tracefs-utest.c:235 - ret == sizeof(struct test_sample) >> 3. tracefs-utest.c:235 - ret == sizeof(struct test_sample) >> > > Does this occur without this patch? IOW, is this caused by this patch? I thought there were 2 "tracefs-utest.c:235 - ret == sizeof(struct test_sample)" failures before this patch and this patch increased the number of failures by 1. However, this does not seem to be 100% correct. I sometimes see only 1 failure, but then there are 2-3 of them. I do trace-cmd reset && unmount before running the unit tests. > >> I did run trace-cmd reset and unmounted my tracefs before running the >> unit tests. >> Please feel free to ignore if something is weirdly wrong in my setup. >> >> Other than that -kind of existing- failure, the patch looks good to me >> (e.g., trace-cmd unit tests are working fine). > > > Can you add a printf("ret = %d\n", ret) to find out what "ret" is? Here is the output with printf's: ... Test: tracefs_iterate_snapshot_events API ... line=237 i=87 path=n~_ cpu=55 value=2046397138 ret=-1 FAILED 1. tracefs-utest.c:240 - ret == sizeof(struct test_sample) Test: tracefs_iterate_raw_events API ... line=237 i=1444 path=~_ cpu=50 value=1150454427 ret=-1 FAILED 1. tracefs-utest.c:240 - ret == sizeof(struct test_sample) Test: Follow events ...passed ... Test: uprobes ... line=2229 ename=utest_u address=/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_u system=utest format=arg1=$stack2 prefix=p type=0x000004 ret=-1 line=2229 ename=utest_r address=/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_r system=utest format=arg1=$retval prefix=r type=0x000008 ret=-1 FAILED 1. tracefs-utest.c:2232 - ret == 0 2. tracefs-utest.c:2232 - ret == 0 And this is the output with your "libtracefs utest: Fixes and new tests" patch series [1]: Test: tracefs_iterate_raw_events API ... line=237 i=2532 path=Db cpu=0 value=1144606227 ret=-1 line=237 i=1285 path=ו3b cpu=6 value=1157898007 ret=-1 FAILED 1. tracefs-utest.c:240 - ret == sizeof(struct test_sample) 2. tracefs-utest.c:240 - ret == sizeof(struct test_sample) Test: Follow events ...passed Test: Follow events clear ...passed Test: tracefs_tracers API ...passed Test: tracefs_local events API ...passed Test: tracefs_instances_walk API ...passed Test: tracefs_get_clock API ...passed Test: tracing on / off ...passed Test: tracing options ...passed Test: custom system directory ...passed Test: ftrace marker ...passed Test: kprobes ...passed Test: synthetic events ...passed Test: eprobes ...passed Test: uprobes ... line=2249 ename=utest_u address=/ssd/tracecmd-work/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_u system=utest format=arg1=$stack2 prefix=p type=0x000004 ret=-1 line=2249 ename=utest_r address=/ssd/tracecmd-work/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_r system=utest format=arg1=$retval prefix=r type=0x000008 ret=-1 FAILED 1. tracefs-utest.c:2252 - ret == 0 2. tracefs-utest.c:2252 - ret == 0 Test: multi probe test ... line=2249 ename=utest_u address=/ssd/tracecmd-work/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_u system=utest format=arg1=$stack2 prefix=p type=0x000004 ret=-1 line=2249 ename=utest_r address=/ssd/tracecmd-work/libtracefs/utest/trace-utest:0x00000000000003e8 event=utest_r system=utest format=arg1=$retval prefix=r type=0x000008 ret=-1 FAILED 1. tracefs-utest.c:2252 - ret == 0 2. tracefs-utest.c:2252 - ret == 0 Thanks, [1] https://lore.kernel.org/linux-trace-devel/[email protected]