[PATCH v3 0/9] tracing: Improbe BTF support on probe events

Masami Hiramatsu (Google)
2023-07-26T13:00:04Z

Hi,

Here is the 3rd version of series to improve the BTF support on probe events.
The previous series is here:

https://lore.kernel.org/all/168960739768.34107.15145201749042174448.stgit@devnote2/

The fixes patch in the previous version has been sent in different series.

https://lore.kernel.org/all/169024903018.395371.1006584451160707296.stgit@devnote2/

In this version, I added BTF support on module symbols (this will be the
biggest change) [1/9] and cleanup the btf APIs [2/9][3/9] according to
the comment. Also [5/9] introduce a query_btf_context() for simplifying
common fields in traceprobe_parse_context. [8/9] added more complex test
case for structure field access. And [9/9] update the documentation about
the mixture of '.' and '->'.

This series can be applied on top of "probes/core" branch of
https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git/

You can also get this series from:

git://git.kernel.org/pub/scm/linux/kernel/git/mhiramat/linux.git topic/fprobe-event-ext

Thank you,

---

Masami Hiramatsu (Google) (9):
tracing/probes: Support BTF argument on module functions
bpf/btf: tracing: Move finding func-proto API and getting func-param API to BTF
bpf/btf: Add a function to search a member of a struct/union
tracing/probes: Support BTF based data structure field access
tracing/probes: Support BTF field access from $retval
tracing/probes: Add string type check with BTF
tracing/fprobe-event: Assume fprobe is a return event by $retval
selftests/ftrace: Add BTF fields access testcases
Documentation: tracing: Update fprobe event example with BTF field

Documentation/trace/fprobetrace.rst | 64 ++-
include/linux/btf.h | 8
kernel/bpf/btf.c | 84 +++
kernel/trace/trace_eprobe.c | 4
kernel/trace/trace_fprobe.c | 59 ++
kernel/trace/trace_kprobe.c | 1
kernel/trace/trace_probe.c | 487 +++++++++++++++-----
kernel/trace/trace_probe.h | 27 +
kernel/trace/trace_uprobe.c | 1
.../ftrace/test.d/dynevent/add_remove_btfarg.tc | 14 +
.../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 6
11 files changed, 582 insertions(+), 173 deletions(-)

--
Masami Hiramatsu (Google) <mhiramat@kernel.org>