[PATCH v3 0/4] reorganize trace_peobe_tmpl.h

From: Song Chen
Date: Mon Dec 05 2022 - 03:22:56 EST


Hi,

In the first patchset, my intension was to remove trace_probe_tmpl.h,
just keep a unified process_fetch_insn and process_fetch_insn_bottom
in trace_probe.c for all *probes. is_uprobe was the most important
move to approach. If it was not accepted, the whole patchset couldn't
stand.

Then I change my goal to at least no warnings or errors when impelenting
a new feature based on trace probe if it includes trace_probe_tmpl.h by
provideing default behaviors. What's more, it also removes redundant
code in kprobe and eprobe.

---
v2:
1, mark nokprobe_inline for get_event_field
2, remove warnings reported from kernel test robot
3, fix errors reported from kernel test robot

Song Chen (4):
kernel/trace: Introduce trace_probe_print_args and use it in *probes
kernel/trace: Provide default impelentations defined in
trace_probe_tmpl.h
include/asm-generic/io.h: remove performing pointer arithmetic on a
null pointer
kernel/trace: remove calling regs_* when compiling HEXAGON

include/asm-generic/io.h | 45 ++++++---
kernel/trace/trace_eprobe.c | 146 +--------------------------
kernel/trace/trace_events_synth.c | 7 +-
kernel/trace/trace_kprobe.c | 106 +-------------------
kernel/trace/trace_probe.c | 27 +++++
kernel/trace/trace_probe.h | 2 +
kernel/trace/trace_probe_kernel.h | 158 ++++++++++++++++++++++++++++--
kernel/trace/trace_probe_tmpl.h | 28 ------
kernel/trace/trace_uprobe.c | 2 +-
9 files changed, 222 insertions(+), 299 deletions(-)

--
2.25.1