I hope you are the correct person for this question.
I would like to write information into the MMIO trace file similar to
what the user space write to /sys/.../trace_marker would accomplish,
however, I want to do it in place of printk statements in the driver I'm
tracing. Do you have any suggestions on how to do this? I have tools to
merge the trace dump with dmesg output, but the latter lags behind and I
do not get good correlation.
Thanks for the info. One other question - when I write only mmiotrace to
the current_tracer, the trace_printk() stuff does not end up in the
buffer. I can get it by using the "sysprof" tracer, but that has a lot
of stuff I do not want. Did I miss some configuration? My list of
available tracers is "blk kmemtrace mmiotrace wakeup_rt wakeup function
sysprof sched_switch nop".
Ug, that's because the mmiotrace handles its own prints and ignores
anything it does not know about. Here, try this patch:
diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c
index 017fa37..8652f28 100644
@@ -282,7 +282,7 @@ static enum print_line_t mmio_print_line(struct trace_iterator *iter)
- return TRACE_TYPE_HANDLED; /* ignore unknown entries */
+ return TRACE_TYPE_UNHANDLED;