From: Cyril Hrubis <chrubis@suse.cz>
To: ltp@lists.linux.it
Subject: [LTP] [PATCH RFC 9/9] ftrace_stress: add two new tests
Date: Mon, 21 Mar 2016 13:09:40 +0100 [thread overview]
Message-ID: <20160321120939.GA32294@rei.lan> (raw)
In-Reply-To: <1617631867.29672478.1458310104811.JavaMail.zimbra@redhat.com>
Hi!
> Thanks for the review. Seems some Bash styles needs to be fixed in all subcase.
> I replied the issues you pointed out below. You mean I need to write a c bin
> to generate random? Or you will make it in lib?
I think easiest solution would be to add tst_random that takes min and
max parameters to the test.sh and use date to implement it. Just do it
in a separate patch, or if needed I can add it for you.
> I have to ask a question about the portable.Can we use an array here? You
> mean we can't use array or just can't use the ${#array_name} to get the
> number of elements? If array can be used, I guess I can use something like
Arrays are bash specific feature.
> echo ${triggers[*]} | wc -w , If not accepted by some shells. Then I need to
> change it to string, and use the way you mentioned echo "$string" | wc -w
That would be the best solution.
FYI you can install dash on most of the distributions and try to run the
scripts with it. That will catch most of the portability issues.
...
> > > + cat $TRACING_PATH/set_ftrace_filter > /dev/null
> >
> > Why do we cat the file to /dev/null?
>
> since the set_ftrace_filter can use reg match and support mod.
> such as if I:
>
> echo :mod:kvm > /sys/kernel/debug/tracing/set_ftrace_filter
>
> cat /sys/kernel/debug/tracing/set_ftrace_filter | head -n 10
> ack_flush [kvm]
> kvm_get_kvm [kvm]
> kvm_disable_largepages [kvm]
> kvm_vcpu_mmap [kvm]
> kvm_io_bus_sort_cmp [kvm]
> mark_page_dirty_in_slot [kvm]
> kvm_sched_out [kvm]
> kvm_vcpu_init [kvm]
> kvm_vcpu_uninit [kvm]
>
> The log will be rather long, I just concern it will make the log
> too large. You suggest make it show ?
I'm just asking since it looks to me like this statement has no effect
at all. Or are we trying to test that kernel does not break if we read
the file? In that case we should add a short comment with explanation.
> > > +}
> > > diff --git
> > > a/testcases/kernel/tracing/ftrace_test/ftrace_stress/ftrace_tracing_cpumask.sh
> > > b/testcases/kernel/tracing/ftrace_test/ftrace_stress/ftrace_tracing_cpumask.sh
> > > new file mode 100755
> > > index 0000000..28bbc27
> > > --- /dev/null
> > > +++
> > > b/testcases/kernel/tracing/ftrace_test/ftrace_stress/ftrace_tracing_cpumask.sh
> > > @@ -0,0 +1,51 @@
> > > +#! /bin/sh
> > > +
> > > +###########################################################################
> > > +##
> > > ##
> > > +## Copyright (c) 2015, Red Hat Inc.
> > > ##
> > > +##
> > > ##
> > > +## This program is free software: you can redistribute it and/or modify
> > > ##
> > > +## it under the terms of the GNU General Public License as published by
> > > ##
> > > +## the Free Software Foundation, either version 3 of the License, or
> > > ##
> > > +## (at your option) any later version.
> > > ##
> > > +##
> > > ##
> > > +## This program is distributed in the hope that it will be useful,
> > > ##
> > > +## but WITHOUT ANY WARRANTY; without even the implied warranty of
> > > ##
> > > +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > > ##
> > > +## GNU General Public License for more details.
> > > ##
> > > +##
> > > ##
> > > +## You should have received a copy of the GNU General Public License
> > > ##
> > > +## along with this program. If not, see <http://www.gnu.org/licenses/>.
> > > ##
> > > +##
> > > ##
> > > +## Author: Chunyu Hu <chuhu@redhat.com>
> > > ##
> > > +##
> > > ##
> > > +###########################################################################
> > > +
> > > +nr_cpus=`tst_ncpus`
> > > +
> > > +get_random_value()
> > > +{
> > > + local max=$1
> > > + local min=${2:-0}
> > > + local random=${RANDOM:-$(date +%N)}
> > > + echo $(( random % max ))
> > > +}
> >
> > Well looks like you have implemented portable random function after all
> > although the range does not work at all.
>
> Hmm, it's not working, agree. So the only portable way is using the
> glibc interfaces. You mean I need to write this with c lib, or you mean
> you will do this? Thanks !
Not really the date +%N would work fine in this case as we do not need
too complicated random generator after all.
--
Cyril Hrubis
chrubis@suse.cz
next prev parent reply other threads:[~2016-03-21 12:09 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-04 8:24 [LTP] [PATCH RFC 0/9] tracing: make ftrace tests to be extended Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 1/9] ftrace_stress: remove the useless file ftrace_get_page_size.c Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 2/9] tracing[1]: reorganize ftrace-stress tests to general tests Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 3/9] tracing[2]: reorganize ftrace stress " Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 4/9] ftrace_regression: add new case to ftrace_regression/ dir Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 5/9] ftrace_regression: add a new testcase Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 6/9] ftrace_stress: skip unsupported tests Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 7/9] ftrace_stress: keep the name of testscipt in sync with tracing file Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 8/9] ftrace_stress: update the trace_options test Li Wang
2016-03-04 8:24 ` [LTP] [PATCH RFC 9/9] ftrace_stress: add two new tests Li Wang
2016-03-17 18:08 ` Cyril Hrubis
2016-03-18 14:08 ` Chunyu Hu
2016-03-21 12:09 ` Cyril Hrubis [this message]
2016-03-17 17:19 ` [LTP] [PATCH RFC 8/9] ftrace_stress: update the trace_options test Cyril Hrubis
2016-03-17 17:28 ` Cyril Hrubis
2016-03-18 13:24 ` Chunyu Hu
2016-03-18 13:21 ` Chunyu Hu
2016-03-17 17:07 ` [LTP] [PATCH RFC 6/9] ftrace_stress: skip unsupported tests Cyril Hrubis
2016-03-18 13:08 ` Chunyu Hu
2016-03-17 16:50 ` [LTP] [PATCH RFC 5/9] ftrace_regression: add a new testcase Cyril Hrubis
2016-03-18 7:57 ` Li Wang
2016-03-17 16:49 ` [LTP] [PATCH RFC 4/9] ftrace_regression: add new case to ftrace_regression/ dir Cyril Hrubis
2016-03-17 16:39 ` [LTP] [PATCH RFC 3/9] tracing[2]: reorganize ftrace stress tests to general tests Cyril Hrubis
2016-03-18 10:42 ` Li Wang
2016-03-21 12:21 ` Cyril Hrubis
2016-03-22 8:27 ` Li Wang
2016-03-17 16:29 ` [LTP] [PATCH RFC 1/9] ftrace_stress: remove the useless file ftrace_get_page_size.c Cyril Hrubis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160321120939.GA32294@rei.lan \
--to=chrubis@suse.cz \
--cc=ltp@lists.linux.it \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.