Re: [PATCH v4 06/11] selftests/ftrace: Add error_log testcase for probe errors

From: Masami Hiramatsu
Date: Sat Mar 23 2019 - 06:22:43 EST


On Fri, 22 Mar 2019 10:34:32 -0500
Tom Zanussi <zanussi@xxxxxxxxxx> wrote:

> From: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
>
> Add error_log testcase for error logs on probe events.
> This tests most of error cases and checks the error position
> is correct.
>
> Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> ---
> .../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 93 ++++++++++++++++++++++
> .../ftrace/test.d/kprobe/uprobe_syntax_errors.tc | 31 ++++++++
> 2 files changed, 124 insertions(+)
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/uprobe_syntax_errors.tc
>
> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_syntax_errors.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_syntax_errors.tc
> new file mode 100644
> index 000000000000..281665b1348c
> --- /dev/null
> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_syntax_errors.tc
> @@ -0,0 +1,93 @@
> +#!/bin/sh
> +# SPDX-License-Identifier: GPL-2.0
> +# description: Kprobe event parser error log check
> +
> +[ -f kprobe_events ] || exit_unsupported # this is configurable
> +
> +[ -f error_log ] || exit_unsupported
> +
> +check_error() { # command-with-error-pos-by-^
> +pos=$(echo -n "${1%^*}" | wc -c) # error position
> +command=$(echo "$1" | tr -d ^)
> +echo "Test command: $command"
> +echo > error_log
> +(! echo "$command" > kprobe_events ) >& /dev/null

Oops, this one. This must be

(! echo "$command" > kprobe_events ) > /dev/null 2>&1

[...]
> diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/uprobe_syntax_errors.tc b/tools/testing/selftests/ftrace/test.d/kprobe/uprobe_syntax_errors.tc
> new file mode 100644
> index 000000000000..957011300bb7
> --- /dev/null
> +++ b/tools/testing/selftests/ftrace/test.d/kprobe/uprobe_syntax_errors.tc
> @@ -0,0 +1,31 @@
> +#!/bin/sh
> +# SPDX-License-Identifier: GPL-2.0
> +# description: Uprobe event parser error log check
> +
> +[ -f uprobe_events ] || exit_unsupported # this is configurable
> +
> +[ -f error_log ] || exit_unsupported
> +
> +check_error() { # command-with-error-pos-by-^
> +pos=$(echo -n "${1%^*}" | wc -c) # error position
> +command=$(echo "$1" | tr -d ^)
> +echo "Test command: $command"
> +echo > error_log
> +(! echo "$command" > uprobe_events ) >& /dev/null

Here too.

Tom, if you don't mind, could you update it when you update
the series? Or should I resend it?

Thank you,

--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>