Messages in this thread | ![/](/images/icornerl.gif) | | Date | Sun, 30 Apr 2023 10:52:31 +0900 | From | Masami Hiramatsu (Google) <> | Subject | Re: [PATCH v3 2/2] selftests/ftrace: Add new test case which checks for optimized probes |
| |
On Fri, 28 Apr 2023 22:08:42 +0530 Akanksha J N <akanksha@linux.ibm.com> wrote:
> Add new test case kprobe_opt_types.tc which enables and checks > if each probe has been optimized in order to test potential issues with > optimized probes. > The '|| continue' is added with the echo statement to ignore errors that > are caused by trying to add kprobes to non probeable lines and continue > with the test. > > Signed-off-by: Akanksha J N <akanksha@linux.ibm.com>
Thanks! This looks good to me.
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
> --- > .../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +++++++++++++++++++ > 1 file changed, 34 insertions(+) > create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc > > diff --git a/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc > new file mode 100644 > index 000000000000..9f5d99328086 > --- /dev/null > +++ b/tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc > @@ -0,0 +1,34 @@ > +#!/bin/sh > +# SPDX-License-Identifier: GPL-2.0-or-later > +# Copyright (C) 2023 Akanksha J N, IBM corporation > +# description: Register/unregister optimized probe > +# requires: kprobe_events > + > +case `uname -m` in > +x86_64) > +;; > +arm*) > +;; > +ppc*) > +;; > +*) > + echo "Please implement other architecture here" > + exit_unsupported > +esac > + > +DEFAULT=$(cat /proc/sys/debug/kprobes-optimization) > +echo 1 > /proc/sys/debug/kprobes-optimization > +for i in `seq 0 255`; do > + echo "p:testprobe $FUNCTION_FORK+${i}" > kprobe_events || continue > + echo 1 > events/kprobes/enable || continue > + (echo "forked") > + PROBE=$(grep $FUNCTION_FORK /sys/kernel/debug/kprobes/list) > + echo 0 > events/kprobes/enable > + echo > kprobe_events > + if echo $PROBE | grep -q OPTIMIZED; then > + echo "$DEFAULT" > /proc/sys/debug/kprobes-optimization > + exit_pass > + fi > +done > +echo "$DEFAULT" > /proc/sys/debug/kprobes-optimization > +exit_unresolved > -- > 2.31.1 >
-- Masami Hiramatsu (Google) <mhiramat@kernel.org>
| ![\](/images/icornerr.gif) |