Re: [PATCH -tip v14 08/12] tracing: add kprobe-based event tracer

From: Frederic Weisbecker
Date: Tue Aug 18 2009 - 21:23:25 EST


On Thu, Aug 13, 2009 at 04:35:11PM -0400, Masami Hiramatsu wrote:
> Add kprobes-based event tracer on ftrace.
>
> This tracer is similar to the events tracer which is based on Tracepoint
> infrastructure. Instead of Tracepoint, this tracer is based on kprobes
> (kprobe and kretprobe). It probes anywhere where kprobes can probe(this
> means, all functions body except for __kprobes functions).
>
> Similar to the events tracer, this tracer doesn't need to be activated via
> current_tracer, instead of that, just set probe points via
> /sys/kernel/debug/tracing/kprobe_events. And you can set filters on each
> probe events via /sys/kernel/debug/tracing/events/kprobes/<EVENT>/filter.
>
> This tracer supports following probe arguments for each probe.
>
> %REG : Fetch register REG
> sN : Fetch Nth entry of stack (N >= 0)
> sa : Fetch stack address.
> @ADDR : Fetch memory at ADDR (ADDR should be in kernel)
> @SYM[+|-offs] : Fetch memory at SYM +|- offs (SYM should be a data symbol)
> aN : Fetch function argument. (N >= 0)
> rv : Fetch return value.
> ra : Fetch return address.
> +|-offs(FETCHARG) : fetch memory at FETCHARG +|- offs address.
>
> See Documentation/trace/kprobetrace.txt for details.
>
> Changes from v13:
> - Support 'sa' for stack address.
> - Use call->data instead of container_of() macro.
>
> Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
> Acked-by: Ananth N Mavinakayanahalli <ananth@xxxxxxxxxx>
> Cc: Avi Kivity <avi@xxxxxxxxxx>
> Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
> Cc: Frank Ch. Eigler <fche@xxxxxxxxxx>
> Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> Cc: H. Peter Anvin <hpa@xxxxxxxxx>
> Cc: Ingo Molnar <mingo@xxxxxxx>
> Cc: Jason Baron <jbaron@xxxxxxxxxx>
> Cc: Jim Keniston <jkenisto@xxxxxxxxxx>
> Cc: K.Prasad <prasad@xxxxxxxxxxxxxxxxxx>
> Cc: Lai Jiangshan <laijs@xxxxxxxxxxxxxx>
> Cc: Li Zefan <lizf@xxxxxxxxxxxxxx>
> Cc: PrzemysÅaw PaweÅczyk <przemyslaw@xxxxxxxxxxxx>
> Cc: Roland McGrath <roland@xxxxxxxxxx>
> Cc: Sam Ravnborg <sam@xxxxxxxxxxxx>
> Cc: Srikar Dronamraju <srikar@xxxxxxxxxxxxxxxxxx>
> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
> Cc: Tom Zanussi <tzanussi@xxxxxxxxx>
> Cc: Vegard Nossum <vegard.nossum@xxxxxxxxx>
> ---
>
> Documentation/trace/kprobetrace.txt | 139 ++++


I'll probably split this commit to have the first version of the
documentation as a separate patch in order to lighten this.

Frederic.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/