[lttng-dev] newbie and kernel trace
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Wed May 22 08:50:52 EDT 2013
* Stéphane ANCELOT (sancelot at free.fr) wrote:
> Hi,
> I have read the Documentation/trace/tracepoints.txt file.
>
> I modified my code to acknowledge it.
>
> I am again unable to list my tracepoints using lttng list . (I also
> tried lttng enable-channel before...).
>
> So , only one step I have not made :
> Is it mandatory to register the probe functions ???
Remember that the probe provider module .ko needs to be loaded manually
(if it is a new one that is not listed in the sessiond automatically
loaded module list).
Please provide the complete diff of the modifications you did to
lttng-modules so we can provide further help.
Thanks,
Mathieu
>
>
> Regards,
> S.Ancelot
>
>
>
>
> On 17/05/2013 17:13, Jérémie Galarneau wrote:
>> Hi Stéphane,
>>
>> We're going to need more details than that. Which kernel version are you using?
>> Can you see the other kernel events in your trace? If not, can you
>> show us how you are setting up your session?
>>
>> Thanks,
>> Jérémie
>>
>> On Fri, May 17, 2013 at 10:58 AM, Stéphane ANCELOT <sancelot at free.fr> wrote:
>>> Hi,
>>>
>>> I am trying to reimplement LTTNG 2. in xenomai api.
>>>
>>> the main problem is that I do not sea any of my new events available in
>>> lttng 2.
>>>
>>>
>>> my kernel compiles fine and here is what I done to set it up :
>>>
>>> file include/trace/events/pod.h :
>>>
>>> #undef TRACE_SYSTEM
>>> #define TRACE_SYSTEM xenotrace
>>>
>>> #if !defined(_XENOTRACE_H) || defined(TRACE_HEADER_MULTI_READ)
>>>
>>> #define _XENOTRACE_H
>>>
>>> #include <linux/tracepoint.h>
>>>
>>>
>>> TRACE_EVENT( xn_nucleus_thread_init,
>>> TP_PROTO(struct xnthread *thread,char *thread_name,xnflags_t
>>> flags,const char *class,int prio),
>>> TP_ARGS(thread,thread_name,flags,class,prio),
>>>
>>> TP_STRUCT__entry(
>>> __field(struct xnthread *,thread)
>>> __array(char ,thread_name, XNOBJECT_NAME_LEN )
>>> __field(xnflags_t,flags)
>>> __array(char,class, XNOBJECT_NAME_LEN )
>>> __field(int, prio )
>>> ),
>>>
>>> TP_fast_assign(
>>> __entry->thread = thread;
>>> memcpy(__entry->thread_name,thread_name, XNOBJECT_NAME_LEN);
>>> __entry->flags = flags;
>>> memcpy(__entry->class,class, XNOBJECT_NAME_LEN);
>>> __entry->prio = prio;
>>> ),
>>>
>>> TP_printk("thread %p thread_name %s flags %lu class %s prio
>>> %d",
>>> __entry->thread, __entry->thread_name,
>>> __entry->flags,__entry->class,
>>> __entry->prio)
>>> );
>>>
>>> #endif
>>>
>>> /* This part must be outside protection */
>>> #include <trace/define_trace.h>
>>>
>>>
>>>
>>> in pod.h :
>>> #define CREATE_TRACE_POINTS
>>> #include <trace/events/pod.h>
>>>
>>> _______________________________________________
>>> lttng-dev mailing list
>>> lttng-dev at lists.lttng.org
>>> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
>>
>>
>
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list