Francis, 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?)
Reg the trace point compile error: 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. Once I had the source files and set the KERNELDIR to the root of the source files ( compiled) it worked. Thanks On Wed, Oct 11, 2017 at 4:49 PM, Francis Deslauriers < francis.deslauri...@efficios.com> wrote: > Hi, > 2017-10-11 17:10 GMT-04:00 avkumar <anilz...@gmail.com>: > > > > Perf probes: > > 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. > > > > perf probe -l > > probe:tcp_gro (on tcp_gro_receive@net/ipv4/tcp_offload.c with > addr len) > > > > lttng enable-event -k --probe=tcp_gro > > First, you have to give your probe event a name. > Second, tcp_gro has to be a kernel symbol. According to the Perf > output above, the symbol name is `tcp_gro_receive` so the command you > want to run is: > lttng enable-event -k --probe=tcp_gro_receive EVENT_NAME > > > Error: Missing event name(s). > > > > When I add it as a trace point > > > > lttng enable-event -k probe:tcp_gro > > Kernel event probe:tcp_gro created in channel channel0] > > > > it does not give any error but no data is collected > > It's expected if you don't have a kernel tracepoint named > "probe:tcp_gro"(you probably don't) currently loaded in your kernel. > There is no error because there is no way for the kernel tracer if the > tracepoint is part of an not-yet-loaded kernel module or not. > "probe:tcp_gro" is a Perf specific description of the kprobe you > enabled. You can not directly reuse this description in the > lttng-enable-event command. To use the `lttng enable-event -k > TRACEPOINT`, try the `lttng list -k` command (with a lttng-sessiond > running as root) to list the currently available tracepoints. > > > > > > > > > Module tracepoints: > > 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. > > Can you give us a bit more details. Could you send us a pastebin of > the error you get? > > Thank you, > Francis > > > > > > > Thanks > > > > > > > > > > > > _______________________________________________ > > lttng-dev mailing list > > lttng-dev@lists.lttng.org > > https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev > > > > > > -- > Francis Deslauriers > Software developer > EfficiOS inc. >
_______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev