[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6cfecc21b67c5aa7e91dfa58b5e59f8545e6524f.camel@kernel.org>
Date: Thu, 15 Oct 2020 08:59:40 -0500
From: Tom Zanussi <zanussi@...nel.org>
To: Masami Hiramatsu <mhiramat@...nel.org>
Cc: rostedt@...dmis.org, axelrasmussen@...gle.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3 7/7] selftests/ftrace: Add test case for synthetic
event syntax errors
Hi Masami,
On Wed, 2020-10-14 at 11:06 +0900, Masami Hiramatsu wrote:
> Hi Tom,
>
> On Tue, 13 Oct 2020 09:17:58 -0500
> Tom Zanussi <zanussi@...nel.org> wrote:
>
> > Add a selftest that verifies that the syntax error messages and
> > caret
> > positions are correct for most of the possible synthetic event
> > syntax
> > error cases.
> >
> > Signed-off-by: Tom Zanussi <zanussi@...nel.org>
> > ---
> > .../trigger-synthetic_event_syntax_errors.tc | 19
> > +++++++++++++++++++
> > 1 file changed, 19 insertions(+)
> > create mode 100644
> > tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-
> > synthetic_event_syntax_errors.tc
> >
> > diff --git a/tools/testing/selftests/ftrace/test.d/trigger/inter-
> > event/trigger-synthetic_event_syntax_errors.tc
> > b/tools/testing/selftests/ftrace/test.d/trigger/inter-
> > event/trigger-synthetic_event_syntax_errors.tc
> > new file mode 100644
> > index 000000000000..ada594fe16cb
> > --- /dev/null
> > +++ b/tools/testing/selftests/ftrace/test.d/trigger/inter-
> > event/trigger-synthetic_event_syntax_errors.tc
> > @@ -0,0 +1,19 @@
> > +#!/bin/sh
> > +# SPDX-License-Identifier: GPL-2.0
> > +# description: event trigger - test synthetic_events syntax parser
> > errors
> > +# requires: synthetic_events error_log
>
> This also requires dynamic strings support. So, its "requires" line
> should be
>
> # requires: synthetic_events error_log "char name[]' >>
> synthetic_events":README
>
Yes, thanks for reminding me. ;-)
> > +
> > +check_error() { # command-with-error-pos-by-^
> > + ftrace_errlog_check 'synthetic_events' "$1" 'synthetic_events'
> > +}
> > +
>
> BTW, some errors looks a bit odd.
>
> > +check_error 'myevent ^chr arg' # INVALID_TYPE
> > +check_error 'myevent ^char str[];; int v' # INVALID_TYPE
>
> I think there is a wrong "void" argument between ";", instead of
> invalid type.
Yes, you're right. I think the solution overall is to just treat
semicolons as whitespace.
>
> > +check_error 'myevent char ^str]; int v' # INVALID_NAME
> > +check_error 'myevent char ^str;[]' # INVALID_NAME
>
> This is also not an invalid name but '[]' is an invalid type.
>
> > +check_error 'myevent ^char str[; int v' # INVALID_TYPE
> > +check_error '^mye;vent char str[]' # BAD_NAME
> > +check_error 'myevent char str[]; ^int' # INVALID_FIELD
>
> Isn't it an incomplete command?
Yes, but also an invalid field. I'll try to refine these errors a bit
and make these more consistent.
Tom
>
> > +check_error '^myevent' #
> > INCOMPLETE_CMD
> > +
> > +exit 0
>
> Thank you,
>
> > --
> > 2.17.1
> >
>
>
Powered by blists - more mailing lists