This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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@redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]