Hi Masami,

> -----Original Message-----
> From: [email protected] [mailto:linux-rt-users-
> [email protected]] On Behalf Of Masami Hiramatsu
> Sent: Tuesday, October 31, 2017 7:29 AM
> To: Tom Zanussi <[email protected]>
> Cc: [email protected]; [email protected]; [email protected];
> [email protected]; Patel, Vedang <[email protected]>;
> [email protected]; [email protected]; [email protected];
> [email protected]; Liu, Baohong <[email protected]>;
> Jingar, Rajvi <[email protected]>; [email protected]; linux-
> [email protected]; [email protected]
> Subject: Re: [PATCH v4 37/37] selftests: ftrace: Add inter-event hist triggers
> testcases
> 
> On Mon, 30 Oct 2017 15:52:19 -0500
> Tom Zanussi <[email protected]> wrote:
> 
> > From: Rajvi Jingar <[email protected]>
> >
> > This adds inter-event hist triggers testcases which covers following:
> >  - create/remove synthetic event
> >  - disable histogram for synthetic event
> >  - extended error support
> >  - field variable support
> >  - histogram variables
> >  - histogram trigger onmatch action
> >  - histogram trigger onmax action
> >  - histogram trigger onmatch-onmax action
> >  - simple expression support
> >  - combined histogram
> 
> Thank you for adding testcases :)
> That helps me to understand how to use it.
> I have some comments, see below;
> 
> 
> [..]
> > diff --git
> > a/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-ex
> > tended-error-support.tc
> > b/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-ex
> > tended-error-support.tc
> > new file mode 100644
> > index 0000000..41dbf4c
> > --- /dev/null
> > +++ b/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigge
> > +++ r-extended-error-support.tc
> > @@ -0,0 +1,39 @@
> > +#!/bin/sh
> > +# description: event trigger - test extended error support
> > +
> > +
> > +do_reset() {
> > +    reset_trigger
> > +    echo > set_event
> > +    clear_trace
> > +}
> > +
> > +fail() { #msg
> > +    do_reset
> > +    echo $1
> > +    exit $FAIL
> > +}
> > +
> > +if [ ! -f set_event ]; then
> > +    echo "event tracing is not supported"
> > +    exit_unsupported
> > +fi
> > +
> > +if [ ! -f synthetic_events ]; then
> > +    echo "synthetic event is not supported"
> > +    exit_unsupported
> > +fi
> > +
> > +reset_tracer
> > +do_reset
> > +
> > +echo "Test extended error support"
> > +echo 'hist:keys=pid:ts0=$common_timestamp.usecs if comm=="ping"' >>
> > +events/sched/sched_wakeup/trigger echo
> > +'hist:keys=pid:ts0=$common_timestamp.usecs if comm=="ping"' >>
> > +events/sched/sched_wakeup/trigger &&
> 
> What is the last "&&"? Would you expect that the second echo is fail?
> 

Yes, The the second echo is expected to fail on trying to add same 
trigger(mainly same variable name). 
I'll change last "&&" to redirect error/output to /dev/null instead.

> > +if ! grep "ERROR:" events/sched/sched_wakeup/hist; then
> 
> Would you like to show the grep result? or you can use -q option for grep
> command.
> 

No, I don't need to show grep results. Will add -q option and will do so for 
all the places with similar case.

> [...]
> > diff --git
> > a/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-sy
> > nthetic-event-createremove.tc
> > b/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigger-sy
> > nthetic-event-createremove.tc
> > new file mode 100644
> > index 0000000..c73e491
> > --- /dev/null
> > +++ b/tools/testing/selftests/ftrace/test.d/trigger/inter-event/trigge
> > +++ r-synthetic-event-createremove.tc
> > @@ -0,0 +1,46 @@
> > +#!/bin/sh
> > +# description: event trigger - test synthetic event create remove
> > +do_reset() {
> > +    reset_trigger
> > +    echo > set_event
> > +    clear_trace
> > +}
> > +
> > +fail() { #msg
> > +    do_reset
> > +    echo $1
> > +    exit $FAIL
> > +}
> > +
> > +if [ ! -f set_event ]; then
> > +    echo "event tracing is not supported"
> > +    exit_unsupported
> > +fi
> > +
> > +if [ ! -f synthetic_events ]; then
> > +    echo "synthetic event is not supported"
> > +    exit_unsupported
> > +fi
> > +
> > +clear_synthetic_events
> > +reset_tracer
> > +do_reset
> > +
> > +echo "Test create synthetic event"
> > +
> > +echo 'wakeup_latency  u64 lat pid_t pid char comm[16]' >
> > +synthetic_events if [ ! -d events/synthetic/wakeup_latency ]; then
> > +    fail "Failed to create wakeup_latency synthetic event"
> > +fi
> > +
> > +reset_trigger
> > +
> > +echo "Test remove synthetic event"
> > +echo '!wakeup_latency  u64 lat; pid_t pid; char[16] comm' >
> > +synthetic_events
> 
> both char[16] and char comm[16] are acceptable?
> But I would like to see same style in creating and removing.
> 

Will change to same style in creating and removing.

> > +if [ -d events/synthetic/wakeup_latency ]; then
> > +    fail "Failed to delete wakeup_latency synthetic event"
> > +fi
> 
> There seems no expected failure test cases. Could you add such test?
> like as echoing events with invalid format etc.
>

Sure, will add a case trying to add an event with wrong format.
 
> 
> <off topic>
> BTW, $FAIL is not for expressing failure, it is a value for $SIG_RESULT. But 
> it
> seems many test cases use it for return code.
> 
> Note that any failure in this script treated as error and exit soon.
> Which means caller can get any return code from this script, because the 
> return
> code depends on executed command. So, any NON-ZERO code can be treated as
> FAILURE code.
> 
> "exit $FAIL" is OK, but just making myself review easier, I'll introduce
> exit_pass()/exit_fail().
> <off topic>
> 
> Thank you,
> 
> --
> Masami Hiramatsu <[email protected]>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in 
> the
> body of a message to [email protected] More majordomo info at
> http://vger.kernel.org/majordomo-info.html

Reply via email to