Re: [RFC][PATCH -tip 1/9] tracing: kprobe-tracer plugin core

From: Masami Hiramatsu
Date: Thu Mar 19 2009 - 23:04:08 EST


Frederic Weisbecker wrote:
> On Thu, Mar 19, 2009 at 05:10:02PM -0400, Masami Hiramatsu wrote:
[...]
>> +/* event recording functions */
>> +static void kprobe_trace_record(unsigned long ip, struct trace_probe *tp,
>> + struct pt_regs *regs)
>> +{
>> + __trace_printk(ip, "%s%s%+ld\n",
>> + probe_is_return(tp) ? "<-" : "@",
>> + probe_symbol(tp), probe_offset(tp));
>
>
> Ah, it means we should implement a sort of trace_printk where
> we can put a custom ip.

Yeah, trace_printk() always shows this function address, instead of
probing address.

> Anyway I don't recommend you to use __trace_printk() because
> trace_printk() wrap it by doing some choices of implementation.
>
> If the format is a builtin string like here, it will choose a binary
> insertion to the ring buffer (the format is not copied but only its address,
> and the arguments are inserted by their binary values). It is more lightweight
> and fast.
>
> If you are using such builtin format, use __trace_bprintk instead.

Sure, I'll try to use it.

Thanks!


--
Masami Hiramatsu

Software Engineer
Hitachi Computer Products (America) Inc.
Software Solutions Division

e-mail: mhiramat@xxxxxxxxxx

--
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/