Re: [PATCH v7 00/16] tracing: probeevent: Improve fetcharg features

From: Masami Hiramatsu
Date: Fri Jun 22 2018 - 02:04:37 EST


Hi Steve,

On Thu, 21 Jun 2018 16:16:48 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> Hi Masami,
>
> Are you going to post another version of this patch set?

No, this is the latest one which I sent to LKML.
Oops, it was 2 month ago now...

Thank you,

>
> -- Steve
>
>
> On Wed, 25 Apr 2018 21:16:06 +0900
> Masami Hiramatsu <mhiramat@xxxxxxxxxx> wrote:
>
> > Hi,
> >
> > This is the 7th version of the fetch-arg improvement series.
> > This includes variable changes on fetcharg framework like,
> >
> > - Add fetcharg testcases (syntax, argN, symbol, string and array)
> > and probepoint testcase.
> > - Rewrite fetcharg framework with fetch_insn, switch-case based
> > instead of function pointer.
> > - Add "symbol" type support, which shows symbol+offset instead of
> > address value.
> > - Add "$argN" fetcharg, which fetches function parameters.
> > (currently only for x86-64)
> > - Add array type support (including string arrary :) ) ,
> > which enables to get fixed length array from probe-events.
> > - Add array type support for perf-probe, so that user can
> > dump partial array entries.
> >
> > V6 is here:
> > https://lkml.org/lkml/2018/3/17/75
> >
> > Changes from the v6 are here:
> > [6/16] - Fix to return an error if failed to fetch string and
> > fill zero-length data_loc in error case.
> > [11/16] - Update document for restructured text.
> > [15/16] - Fix README test.
> > [16/16] - Add type-casting description (and note) to documentation.
> >
> > And rebased on the latest Steve's ftrace/core branch.
> >
> > Thank you,
> >
> > ---
> >
> > Masami Hiramatsu (16):
> > tracing: probeevent: Cleanup print argument functions
> > tracing: probeevent: Cleanup argument field definition
> > tracing: probeevent: Remove NOKPROBE_SYMBOL from print functions
> > tracing: probeevent: Introduce new argument fetching code
> > tracing: probeevent: Unify fetch type tables
> > tracing: probeevent: Return consumed bytes of dynamic area
> > tracing: probeevent: Append traceprobe_ for exported function
> > tracing: probeevent: Unify fetch_insn processing common part
> > tracing: probeevent: Add symbol type
> > x86: ptrace: Add function argument access API
> > tracing: probeevent: Add $argN for accessing function args
> > tracing: probeevent: Add array type support
> > selftests: ftrace: Add a testcase for symbol type
> > selftests: ftrace: Add a testcase for $argN with kprobe_event
> > selftests: ftrace: Add a testcase for array type with kprobe_event
> > perf-probe: Add array argument support
> >
> >
> > Documentation/trace/kprobetrace.rst | 23 +
> > arch/Kconfig | 7
> > arch/x86/Kconfig | 1
> > arch/x86/include/asm/ptrace.h | 38 +
> > kernel/trace/trace.c | 9
> > kernel/trace/trace_kprobe.c | 358 ++++--------
> > kernel/trace/trace_probe.c | 620 +++++++++-----------
> > kernel/trace/trace_probe.h | 282 +++------
> > kernel/trace/trace_probe_tmpl.h | 216 +++++++
> > kernel/trace/trace_uprobe.c | 176 ++----
> > tools/perf/Documentation/perf-probe.txt | 12
> > tools/perf/util/probe-event.c | 20 +
> > tools/perf/util/probe-event.h | 2
> > tools/perf/util/probe-file.c | 5
> > tools/perf/util/probe-file.h | 1
> > tools/perf/util/probe-finder.c | 95 ++-
> > .../ftrace/test.d/kprobe/kprobe_args_argN.tc | 25 +
> > .../ftrace/test.d/kprobe/kprobe_args_array.tc | 92 +++
> > .../ftrace/test.d/kprobe/kprobe_args_symbol.tc | 77 ++
> > 19 files changed, 1127 insertions(+), 932 deletions(-)
> > create mode 100644 kernel/trace/trace_probe_tmpl.h
> > create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_argN.tc
> > create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_array.tc
> > create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_args_symbol.tc
> >
> > --
> > Masami Hiramatsu (Linaro) <mhiramat@xxxxxxxxxx>
>


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>