<div dir="ltr">Francis, <div>The suggestion you gave works, but the issue I was trying to solve was to be able to peer into the structures passed to the function and get some information from that. That is the reason I pulled out the variables in perf probe. When I use the way you have suggested I am not able to figure out how to get it to print the skb length and skb address. Is there a way to do it( skb is passed into those functions?)</div><div><br></div><div>Reg the trace point compile error:</div><div>I figured that one out.  I had to have the source files for the kernel to get that to work. I could not do with only header file for the kernel. </div><div>Once I had the source files and  set the KERNELDIR to the root of the source files ( compiled) it worked. </div><div><br></div><div>Thanks</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 11, 2017 at 4:49 PM, Francis Deslauriers <span dir="ltr"><<a href="mailto:francis.deslauriers@efficios.com" target="_blank">francis.deslauriers@efficios.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
2017-10-11 17:10 GMT-04:00 avkumar <<a href="mailto:anilzoom@gmail.com">anilzoom@gmail.com</a>>:<br>
><br>
> Perf probes:<br>
> How can we add the dynamic trace points created by perf probe into lttng? When I add the perf probe as kprobe type I get missing tracepoint error, If I add the perf probe as tracepoint , Lttng does not complain but it does not collect any data when the tracepoint is hit.<br>
><br>
> perf probe -l<br>
>   probe:tcp_gro        (on tcp_gro_receive@net/ipv4/tcp_<wbr>offload.c with addr len)<br>
><br>
> lttng enable-event -k --probe=tcp_gro<br>
<br>
First, you have to give your probe event a name.<br>
Second, tcp_gro has to be a kernel symbol. According to the Perf<br>
output above, the symbol name is `tcp_gro_receive` so the command you<br>
want to run is:<br>
lttng enable-event -k --probe=tcp_gro_receive EVENT_NAME<br>
<br>
> Error: Missing event name(s).<br>
><br>
> When I add it as a trace point<br>
><br>
> lttng enable-event -k probe:tcp_gro<br>
> Kernel event probe:tcp_gro created in channel channel0]<br>
><br>
> it does not give any error but no data is collected<br>
<br>
It's expected if you don't have a kernel tracepoint named<br>
"probe:tcp_gro"(you probably don't) currently loaded in your kernel.<br>
There is no error because there is no way for the kernel tracer if the<br>
tracepoint is part of an not-yet-loaded kernel module or not.<br>
"probe:tcp_gro" is a Perf specific description of the kprobe you<br>
enabled. You can not directly reuse this description in the<br>
lttng-enable-event command. To use the `lttng enable-event -k<br>
TRACEPOINT`, try the `lttng list -k` command (with a lttng-sessiond<br>
running as root) to list the currently available tracepoints.<br>
<br>
><br>
><br>
><br>
> Module tracepoints:<br>
> I created module tracepoints in the kernel and compiled the trace points. The header file is in the driver module directory. When I write the adaptation layer for lttng, it does not compile as it is not able to fien the header file. I have given fill path name to the header file and still it does not work.<br>
<br>
Can you give us a bit more details. Could you send us a pastebin of<br>
the error you get?<br>
<br>
Thank you,<br>
Francis<br>
<br>
><br>
><br>
> Thanks<br>
><br>
><br>
><br>
><br>
><br>
> ______________________________<wbr>_________________<br>
> lttng-dev mailing list<br>
> <a href="mailto:lttng-dev@lists.lttng.org">lttng-dev@lists.lttng.org</a><br>
> <a href="https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev" rel="noreferrer" target="_blank">https://lists.lttng.org/cgi-<wbr>bin/mailman/listinfo/lttng-dev</a><br>
><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
Francis Deslauriers<br>
Software developer<br>
EfficiOS inc.<br>
</font></span></blockquote></div><br></div>