Sashiko made a good comment: > commit ce5985c5ce46daa952ae907992e02e403e601c04 > Author: Masami Hiramatsu (Google) <[email protected]> > tracing/probes: Support dumping fetcharg program for debugging dynamic events > This commit introduces a new configuration option > CONFIG_PROBE_EVENTS_DUMP_FETCHARG to debug dynamic events. When enabled, it > appends commented lines containing the fetch instructions to dynamic events in > tracefs files. This helps in verifying the compiled fetch instructions for > each probe argument. > > diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c > > index a8420e6abb56a..cfa807d8e760f 100644 > > --- a/kernel/trace/trace_kprobe.c > > +++ b/kernel/trace/trace_kprobe.c > > @@ -1320,6 +1320,8 @@ static int trace_kprobe_show(struct seq_file *m, > > struct dyn_event *ev) > > seq_printf(m, " %s=%s", tk->tp.args[i].name, > > tk->tp.args[i].comm); > > seq_putc(m, '\n'); > > > > + trace_probe_dump_args(m, &tk->tp); > > + > Does enabling CONFIG_PROBE_EVENTS_DUMP_FETCHARG break in-tree userspace tools > that parse kprobe_events? > For example, perf probe reads the kprobe_events file directly. It passes > the unexpected # lines to parse_probe_trace_command() in > tools/perf/util/probe-file.c:__probe_file__get_namelist(), which returns > -EINVAL and immediately aborts the event listing process. > Similarly, the ftrace2bconf script does not ignore # lines when reading > kprobe_events, which leads it to mistakenly emit invalid bootconfig syntax > in tools/bootconfig/scripts/ftrace2bconf.sh:kprobe_event_options() > (e.g. ftrace.event.kprobes.#.probes += ...).
Yeah, those tools needs to be updated. Anyway, the tools which reads the files in tracefs should skip the lines started with #, Those are comment lines. (e.g. trace file, hist file, etc.) Thanks, -- Masami Hiramatsu
