This patchset introduces trace event injection, the first 3 patches are some trivial prerequisites, the last one implements the trace event injection. Please check each patch for details.
I have tested them with both valid and invalid input on different tracepoints, it works as expected. Cc: Steven Rostedt <rost...@goodmis.org> Cc: Ingo Molnar <mi...@redhat.com> Signed-off-by: Cong Wang <xiyou.wangc...@gmail.com> --- Cong Wang (4): trace: fold type initialization into tracing_generic_entry_update() trace: let filter_assign_type() detect FILTER_PTR_STRING trace: make trace_get_fields() global trace: introduce trace event injection include/linux/trace_events.h | 9 + kernel/trace/Makefile | 1 + kernel/trace/trace.c | 8 +- kernel/trace/trace.h | 1 + kernel/trace/trace_event_perf.c | 3 +- kernel/trace/trace_events.c | 12 +- kernel/trace/trace_events_filter.c | 3 + kernel/trace/trace_events_inject.c | 330 +++++++++++++++++++++++++++++ 8 files changed, 353 insertions(+), 14 deletions(-) create mode 100644 kernel/trace/trace_events_inject.c -- 2.21.0