lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211119230936.76337b13cd0fd15d66d437b8@kernel.org>
Date:   Fri, 19 Nov 2021 23:09:36 +0900
From:   Masami Hiramatsu <mhiramat@...nel.org>
To:     Jeff Xie <xiehuan09@...il.com>
Cc:     rostedt@...dmis.org, mhiramat@...nel.org, mingo@...hat.com,
        zanussi@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC][PATCH v5 3/4] trace/objtrace: Add testcases for objtrace
 trigger parsing

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

Please add a patch description here.

> Signed-off-by: Jeff Xie <xiehuan09@...il.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@...nel.org>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ