All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing
       [not found] ` <tencent_CA3FD88F43A620435A6D24163EDD41AD7B07@qq.com>
@ 2022-01-06  0:53   ` Steven Rostedt
  0 siblings, 0 replies; 4+ messages in thread
From: Steven Rostedt @ 2022-01-06  0:53 UTC (permalink / raw)
  To: fuyufan; +Cc: mhiramat, mingo, zanussi, linux-kernel, xuhuijie, xuhuijie

On Thu,  6 Jan 2022 00:02:53 +0000
fuyufan <835863489@qq.com> wrote:

> From: xuhuijie <xuhujie2@huawei.com>

Needs a change log.

-- Steve

> 
> Signed-off-by: xuhuijie <xuhujie2@huawei.com>
> ---
>  .../ftrace/test.d/trigger/trigger-objtrace.tc | 41 +++++++++++++++++++
>  1 file changed, 41 insertions(+)
>  create mode 100644 tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> 
> diff --git a/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> new file mode 100644
> index 000000000000..4efcd7eee694
> --- /dev/null
> +++ b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> @@ -0,0 +1,41 @@
> +#!/bin/sh
> +# SPDX-License-Identifier: GPL-2.0
> +# description: event trigger - test objtrace-trigger
> +# requires: kprobe_events
> +
> +fail() { #msg
> +    echo $1
> +    exit_fail
> +}
> +
> +echo 'p bio_add_page arg1=$arg1' > kprobe_events
> +
> +FEATURE=`grep objtrace events/kprobes/p_bio_add_page_0/trigger`
> +if [ -z "$FEATURE" ]; then
> +    echo "objtrace trigger is not supported"
> +    exit_unsupported
> +fi
> +
> +echo "Test objtrace trigger"
> +echo 'objtrace:add:0x28(arg1):u32:1 if comm == "cat"' > \
> +	events/kprobes/p_bio_add_page_0/trigger
> +if [ -z $? ]; then
> +	fail "objtrace trigger syntax error"
> +fi
> +
> +echo "Test objtrace semantic errors"
> +
> +# Being lack of type size
> +! echo 'objtrace:add:0x28(arg1):1' > events/kprobes/p_bio_add_page_0/trigger
> +# Being lack of objtrace command
> +! echo 'objtrace:0x28(arg1):u32:1' > events/kprobes/p_bio_add_page_0/trigger
> +# Bad parameter name
> +! echo 'objtrace:add:argx:u32:1' > events/kprobes/p_bio_add_page_0/trigger
> +
> +echo "reset objtrace trigger"
> +
> +echo '!objtrace:add:0x28(arg1):u32' > \
> +	events/kprobes/p_bio_add_page_0/trigger
> +echo '-:p_bio_add_page_0' >> ./kprobe_events
> +
> +exit 0


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing
  2021-11-19 14:09   ` Masami Hiramatsu
@ 2021-11-21 17:16     ` Jeff Xie
  0 siblings, 0 replies; 4+ messages in thread
From: Jeff Xie @ 2021-11-21 17:16 UTC (permalink / raw)
  To: Masami Hiramatsu; +Cc: Steven Rostedt, mingo, Tom Zanussi, linux-kernel

Hi Masami,

On Fri, Nov 19, 2021 at 10:09 PM Masami Hiramatsu <mhiramat@kernel.org> wrote:
>
> On Sat, 13 Nov 2021 20:06:31 +0800
> Jeff Xie <xiehuan09@gmail.com> wrote:
>
> Please add a patch description here.
>
> > Signed-off-by: Jeff Xie <xiehuan09@gmail.com>
> > ---
> >  .../ftrace/test.d/trigger/trigger-objtrace.tc | 41 +++++++++++++++++++
> >  1 file changed, 41 insertions(+)
> >  create mode 100644 tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> >
> > diff --git a/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> > new file mode 100644
> > index 000000000000..4efcd7eee694
> > --- /dev/null
> > +++ b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> > @@ -0,0 +1,41 @@
> > +#!/bin/sh
> > +# SPDX-License-Identifier: GPL-2.0
> > +# description: event trigger - test objtrace-trigger
> > +# requires: kprobe_events
>
> Hmm, didn't you add something for this in <tracefs>/README?

Sorry, I ignored  it.

> Instead of checking trigger file, I recommend to update
>
> There is a text data in the kernel/trace/trace.c;
> static const char readme_msg[] =
> ...
>         "\t   trigger: traceon, traceoff\n"
>         "\t            enable_event:<system>:<event>\n"
>         "\t            disable_event:<system>:<event>\n"
> #ifdef CONFIG_HIST_TRIGGERS
>         "\t            enable_hist:<system>:<event>\n"
>         "\t            disable_hist:<system>:<event>\n"
> #endif
>
> You can add somewhere near there as
>
> #ifdef CONFIG_TRACE_OBJECT
>         "\t            objtrace:add:..." // fill syntax.
> #endif
>
> And then, you can write the pattern in the requires line, like
>
> # requires: kprobe_events "objtrace":README
>
> Thank you,

Thanks, I will add them to <tracefs>/README, and modify the
trigger-objtrace.tc file.

> > +
> > +fail() { #msg
> > +    echo $1
> > +    exit_fail
> > +}
> > +
> > +echo 'p bio_add_page arg1=$arg1' > kprobe_events
> > +
> > +FEATURE=`grep objtrace events/kprobes/p_bio_add_page_0/trigger`
> > +if [ -z "$FEATURE" ]; then
> > +    echo "objtrace trigger is not supported"
> > +    exit_unsupported
> > +fi
>
>
> > +
> > +echo "Test objtrace trigger"
> > +echo 'objtrace:add:0x28(arg1):u32:1 if comm == "cat"' > \
> > +     events/kprobes/p_bio_add_page_0/trigger
> > +if [ -z $? ]; then
> > +     fail "objtrace trigger syntax error"
> > +fi
> > +
> > +echo "Test objtrace semantic errors"
> > +
> > +# Being lack of type size
> > +! echo 'objtrace:add:0x28(arg1):1' > events/kprobes/p_bio_add_page_0/trigger
> > +# Being lack of objtrace command
> > +! echo 'objtrace:0x28(arg1):u32:1' > events/kprobes/p_bio_add_page_0/trigger
> > +# Bad parameter name
> > +! echo 'objtrace:add:argx:u32:1' > events/kprobes/p_bio_add_page_0/trigger
> > +
> > +echo "reset objtrace trigger"
> > +
> > +echo '!objtrace:add:0x28(arg1):u32' > \
> > +     events/kprobes/p_bio_add_page_0/trigger
> > +echo '-:p_bio_add_page_0' >> ./kprobe_events
> > +
> > +exit 0
> > --
> > 2.25.1
> >
>
>
> --
> Masami Hiramatsu <mhiramat@kernel.org>
Thanks,
---
JeffXie

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing
  2021-11-13 12:06 ` [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing Jeff Xie
@ 2021-11-19 14:09   ` Masami Hiramatsu
  2021-11-21 17:16     ` Jeff Xie
  0 siblings, 1 reply; 4+ messages in thread
From: Masami Hiramatsu @ 2021-11-19 14:09 UTC (permalink / raw)
  To: Jeff Xie; +Cc: rostedt, mhiramat, mingo, zanussi, linux-kernel

On Sat, 13 Nov 2021 20:06:31 +0800
Jeff Xie <xiehuan09@gmail.com> wrote:

Please add a patch description here.

> Signed-off-by: Jeff Xie <xiehuan09@gmail.com>
> ---
>  .../ftrace/test.d/trigger/trigger-objtrace.tc | 41 +++++++++++++++++++
>  1 file changed, 41 insertions(+)
>  create mode 100644 tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> 
> diff --git a/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> new file mode 100644
> index 000000000000..4efcd7eee694
> --- /dev/null
> +++ b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
> @@ -0,0 +1,41 @@
> +#!/bin/sh
> +# SPDX-License-Identifier: GPL-2.0
> +# description: event trigger - test objtrace-trigger
> +# requires: kprobe_events

Hmm, didn't you add something for this in <tracefs>/README?
Instead of checking trigger file, I recommend to update 

There is a text data in the kernel/trace/trace.c;
static const char readme_msg[] =
...
        "\t   trigger: traceon, traceoff\n"
        "\t            enable_event:<system>:<event>\n"
        "\t            disable_event:<system>:<event>\n"
#ifdef CONFIG_HIST_TRIGGERS
        "\t            enable_hist:<system>:<event>\n"
        "\t            disable_hist:<system>:<event>\n"
#endif

You can add somewhere near there as 

#ifdef CONFIG_TRACE_OBJECT
        "\t            objtrace:add:..." // fill syntax.
#endif

And then, you can write the pattern in the requires line, like

# requires: kprobe_events "objtrace":README

Thank you,

> +
> +fail() { #msg
> +    echo $1
> +    exit_fail
> +}
> +
> +echo 'p bio_add_page arg1=$arg1' > kprobe_events
> +
> +FEATURE=`grep objtrace events/kprobes/p_bio_add_page_0/trigger`
> +if [ -z "$FEATURE" ]; then
> +    echo "objtrace trigger is not supported"
> +    exit_unsupported
> +fi


> +
> +echo "Test objtrace trigger"
> +echo 'objtrace:add:0x28(arg1):u32:1 if comm == "cat"' > \
> +	events/kprobes/p_bio_add_page_0/trigger
> +if [ -z $? ]; then
> +	fail "objtrace trigger syntax error"
> +fi
> +
> +echo "Test objtrace semantic errors"
> +
> +# Being lack of type size
> +! echo 'objtrace:add:0x28(arg1):1' > events/kprobes/p_bio_add_page_0/trigger
> +# Being lack of objtrace command
> +! echo 'objtrace:0x28(arg1):u32:1' > events/kprobes/p_bio_add_page_0/trigger
> +# Bad parameter name
> +! echo 'objtrace:add:argx:u32:1' > events/kprobes/p_bio_add_page_0/trigger
> +
> +echo "reset objtrace trigger"
> +
> +echo '!objtrace:add:0x28(arg1):u32' > \
> +	events/kprobes/p_bio_add_page_0/trigger
> +echo '-:p_bio_add_page_0' >> ./kprobe_events
> +
> +exit 0
> -- 
> 2.25.1
> 


-- 
Masami Hiramatsu <mhiramat@kernel.org>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing
  2021-11-13 12:06 [RFC][PATCH v5 1/4] trace: Add trace any kernel object Jeff Xie
@ 2021-11-13 12:06 ` Jeff Xie
  2021-11-19 14:09   ` Masami Hiramatsu
  0 siblings, 1 reply; 4+ messages in thread
From: Jeff Xie @ 2021-11-13 12:06 UTC (permalink / raw)
  To: rostedt; +Cc: mhiramat, mingo, zanussi, linux-kernel, Jeff Xie

Signed-off-by: Jeff Xie <xiehuan09@gmail.com>
---
 .../ftrace/test.d/trigger/trigger-objtrace.tc | 41 +++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc

diff --git a/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
new file mode 100644
index 000000000000..4efcd7eee694
--- /dev/null
+++ b/tools/testing/selftests/ftrace/test.d/trigger/trigger-objtrace.tc
@@ -0,0 +1,41 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0
+# description: event trigger - test objtrace-trigger
+# requires: kprobe_events
+
+fail() { #msg
+    echo $1
+    exit_fail
+}
+
+echo 'p bio_add_page arg1=$arg1' > kprobe_events
+
+FEATURE=`grep objtrace events/kprobes/p_bio_add_page_0/trigger`
+if [ -z "$FEATURE" ]; then
+    echo "objtrace trigger is not supported"
+    exit_unsupported
+fi
+
+echo "Test objtrace trigger"
+echo 'objtrace:add:0x28(arg1):u32:1 if comm == "cat"' > \
+	events/kprobes/p_bio_add_page_0/trigger
+if [ -z $? ]; then
+	fail "objtrace trigger syntax error"
+fi
+
+echo "Test objtrace semantic errors"
+
+# Being lack of type size
+! echo 'objtrace:add:0x28(arg1):1' > events/kprobes/p_bio_add_page_0/trigger
+# Being lack of objtrace command
+! echo 'objtrace:0x28(arg1):u32:1' > events/kprobes/p_bio_add_page_0/trigger
+# Bad parameter name
+! echo 'objtrace:add:argx:u32:1' > events/kprobes/p_bio_add_page_0/trigger
+
+echo "reset objtrace trigger"
+
+echo '!objtrace:add:0x28(arg1):u32' > \
+	events/kprobes/p_bio_add_page_0/trigger
+echo '-:p_bio_add_page_0' >> ./kprobe_events
+
+exit 0
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-01-06  0:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20211113120632.94754-1-xuhujie2@gmail.com>
     [not found] ` <tencent_CA3FD88F43A620435A6D24163EDD41AD7B07@qq.com>
2022-01-06  0:53   ` [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing Steven Rostedt
2021-11-13 12:06 [RFC][PATCH v5 1/4] trace: Add trace any kernel object Jeff Xie
2021-11-13 12:06 ` [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace trigger parsing Jeff Xie
2021-11-19 14:09   ` Masami Hiramatsu
2021-11-21 17:16     ` Jeff Xie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.