> On 14-Jul-2023, at 6:57 PM, Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote: > > !! External Email > > On Thu, 13 Jul 2023 22:37:58 -0400 > Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > >> On Thu, 13 Jul 2023 17:03:24 +0530 >> Ajay Kaher <akaher@xxxxxxxxxx> wrote: >> >>> kprobe_args_char.tc, kprobe_args_string.tc has validation check >>> for tracefs_create_dir, for eventfs it should be eventfs_create_dir. >>> >>> Signed-off-by: Ajay Kaher <akaher@xxxxxxxxxx> >>> Co-developed-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx> >>> Signed-off-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx> >>> Tested-by: Ching-lin Yu <chinglinyu@xxxxxxxxxx> >>> Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx> >> >> As this patch as is will break when running on older kernels, I was >> wondering if we should do this instead? > > +1 since the latest kselftest is used also for checking the older > stable kernels, the test case has to check the environment and > change the parameter (or make it unsupported for new feature) > So below looks good to me. +1, many ftrace tests are unsupported in my setup and may few require changes, not sure. Does any auto job takes care of this? - Ajay >> >> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >> index 285b4770efad..ff7499eb98d6 100644 >> --- a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >> @@ -34,14 +34,19 @@ mips*) >> esac >> >> : "Test get argument (1)" >> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):char" > kprobe_events >> +if grep -q eventfs_add_dir available_filter_functions; then >> + DIR_NAME="eventfs_add_dir" >> +else >> + DIR_NAME="tracefs_create_dir" >> +fi >> +echo "p:testprobe ${DIR_NAME} arg1=+0(${ARG1}):char" > kprobe_events >> echo 1 > events/kprobes/testprobe/enable >> echo "p:test $FUNCTION_FORK" >> kprobe_events >> grep -qe "testprobe.* arg1='t'" trace >> >> echo 0 > events/kprobes/testprobe/enable >> : "Test get argument (2)" >> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):char arg2=+0(${ARG1}):char[4]" > kprobe_events >> +echo "p:testprobe ${DIR_NAME} arg1=+0(${ARG1}):char arg2=+0(${ARG1}):char[4]" > kprobe_events >> echo 1 > events/kprobes/testprobe/enable >> echo "p:test $FUNCTION_FORK" >> kprobe_events >> grep -qe "testprobe.* arg1='t' arg2={'t','e','s','t'}" trace >> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >> index a4f8e7c53c1f..a202b2ea4baf 100644 >> --- a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >> @@ -37,14 +37,19 @@ loongarch*) >> esac >> >> : "Test get argument (1)" >> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string" > kprobe_events >> +if grep -q eventfs_add_dir available_filter_functions; then >> + DIR_NAME="eventfs_add_dir" >> +else >> + DIR_NAME="tracefs_create_dir" >> +fi >> +echo "p:testprobe ${DIR_NAME} arg1=+0(${ARG1}):string" > kprobe_events >> echo 1 > events/kprobes/testprobe/enable >> echo "p:test $FUNCTION_FORK" >> kprobe_events >> grep -qe "testprobe.* arg1=\"test\"" trace >> >> echo 0 > events/kprobes/testprobe/enable >> : "Test get argument (2)" >> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events >> +echo "p:testprobe ${DIR_NAME} arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events >> echo 1 > events/kprobes/testprobe/enable >> echo "p:test $FUNCTION_FORK" >> kprobe_events >> grep -qe "testprobe.* arg1=\"test\" arg2=\"test\"" trace >> >> -- Steve >> >>> --- >>> .../selftests/ftrace/test.d/kprobe/kprobe_args_char.tc | 4 ++-- >>> .../selftests/ftrace/test.d/kprobe/kprobe_args_string.tc | 4 ++-- >>> 2 files changed, 4 insertions(+), 4 deletions(-) >>> >>> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >>> index 285b4770efad..523cfb64539f 100644 >>> --- a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >>> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_char.tc >>> @@ -34,14 +34,14 @@ mips*) >>> esac >>> >>> : "Test get argument (1)" >>> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):char" > kprobe_events >>> +echo "p:testprobe eventfs_add_dir arg1=+0(${ARG1}):char" > kprobe_events >>> echo 1 > events/kprobes/testprobe/enable >>> echo "p:test $FUNCTION_FORK" >> kprobe_events >>> grep -qe "testprobe.* arg1='t'" trace >>> >>> echo 0 > events/kprobes/testprobe/enable >>> : "Test get argument (2)" >>> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):char arg2=+0(${ARG1}):char[4]" > kprobe_events >>> +echo "p:testprobe eventfs_add_dir arg1=+0(${ARG1}):char arg2=+0(${ARG1}):char[4]" > kprobe_events >>> echo 1 > events/kprobes/testprobe/enable >>> echo "p:test $FUNCTION_FORK" >> kprobe_events >>> grep -qe "testprobe.* arg1='t' arg2={'t','e','s','t'}" trace >>> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >>> index a4f8e7c53c1f..b9f8c3f8bae8 100644 >>> --- a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >>> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_string.tc >>> @@ -37,14 +37,14 @@ loongarch*) >>> esac >>> >>> : "Test get argument (1)" >>> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string" > kprobe_events >>> +echo "p:testprobe eventfs_add_dir arg1=+0(${ARG1}):string" > kprobe_events >>> echo 1 > events/kprobes/testprobe/enable >>> echo "p:test $FUNCTION_FORK" >> kprobe_events >>> grep -qe "testprobe.* arg1=\"test\"" trace >>> >>> echo 0 > events/kprobes/testprobe/enable >>> : "Test get argument (2)" >>> -echo "p:testprobe tracefs_create_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events >>> +echo "p:testprobe eventfs_add_dir arg1=+0(${ARG1}):string arg2=+0(${ARG1}):string" > kprobe_events >>> echo 1 > events/kprobes/testprobe/enable >>> echo "p:test $FUNCTION_FORK" >> kprobe_events >>> grep -qe "testprobe.* arg1=\"test\" arg2=\"test\"" trace