* [Xenomai-help] Need help with ipipe trace
@ 2012-03-01 19:20 Makarand Pradhan
2012-03-01 19:38 ` Gilles Chanteperdrix
0 siblings, 1 reply; 5+ messages in thread
From: Makarand Pradhan @ 2012-03-01 19:20 UTC (permalink / raw)
To: xenomai@xenomai.org
Hi,
I am trying to get an ipipe trace and need help to get it working.
I am using Xenomai 2.6 with linux 3.0.0.
The kernel is compiled with following config parameters:
CONFIG_IPIPE_DEBUG=y
CONFIG_IPIPE_DEBUG_CONTEXT=y
CONFIG_IPIPE_DEBUG_INTERNAL=y
CONFIG_IPIPE_TRACE=y
CONFIG_IPIPE_TRACE_ENABLE=y
CONFIG_IPIPE_TRACE_MCOUNT=y
CONFIG_IPIPE_TRACE_IRQSOFF=y
CONFIG_IPIPE_TRACE_SHIFT=14
CONFIG_IPIPE_TRACE_VMALLOC=y
CONFIG_IPIPE_TRACE_PANIC=y
CONFIG_DEBUG_KERNEL=y
The /proc/ipipe direcotry is created.
In my application I am using:
xntrace_max_begin(0); -> To start tracing.
xntrace_max_end(0); -> To stop tracing.
The function trace that I get in the /proc/ipipe/trace/max file does not
have the xenomai calls that I am invoking e.g. rt_timer_read.
Can you pl advice if this is the correct method of using the tracer?
Can you pl elaborate on the value being passed in? I see it is
initializing to:
+ tp->nmi_saved_v = v;
but could not understand it's use? Is it the no. of nested nmi's that
will be traced?
Are there any examples of the use of xntrace_max_* functions?
I have also tried using xntrace_user_freeze by looking at latency.c. The
contents of the frozen file does have a trace to the functions I am
calling e.g. rt_timer_read, but I do not see any interrupt processing in
the trace.
Will interrupts be traced by the ipipe tracer? Is there any other way to
trace the interrupts with a timestamp that are handled by ipipe?
Thanks for your time.
Warm Rgds,
Mak.
--
___________________________________________________________________________
NOTICE OF CONFIDENTIALITY:
This e-mail and any attachments may contain confidential and privileged information. If you are
not the intended recipient, please notify the sender immediately by return e-mail and delete this
e-mail and any copies. Any dissemination or use of this information by a person other than the
intended recipient is unauthorized and may be illegal.
_____________________________________________________________________
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Need help with ipipe trace
2012-03-01 19:20 [Xenomai-help] Need help with ipipe trace Makarand Pradhan
@ 2012-03-01 19:38 ` Gilles Chanteperdrix
2012-03-01 20:02 ` Makarand Pradhan
0 siblings, 1 reply; 5+ messages in thread
From: Gilles Chanteperdrix @ 2012-03-01 19:38 UTC (permalink / raw)
To: Makarand Pradhan; +Cc: xenomai@xenomai.org
On 03/01/2012 08:20 PM, Makarand Pradhan wrote:
> Hi,
>
> I am trying to get an ipipe trace and need help to get it working.
>
> I am using Xenomai 2.6 with linux 3.0.0.
>
> The kernel is compiled with following config parameters:
>
> CONFIG_IPIPE_DEBUG=y
> CONFIG_IPIPE_DEBUG_CONTEXT=y
> CONFIG_IPIPE_DEBUG_INTERNAL=y
> CONFIG_IPIPE_TRACE=y
> CONFIG_IPIPE_TRACE_ENABLE=y
> CONFIG_IPIPE_TRACE_MCOUNT=y
> CONFIG_IPIPE_TRACE_IRQSOFF=y
> CONFIG_IPIPE_TRACE_SHIFT=14
> CONFIG_IPIPE_TRACE_VMALLOC=y
> CONFIG_IPIPE_TRACE_PANIC=y
> CONFIG_DEBUG_KERNEL=y
>
> The /proc/ipipe direcotry is created.
>
> In my application I am using:
>
> xntrace_max_begin(0); -> To start tracing.
> xntrace_max_end(0); -> To stop tracing.
>
> The function trace that I get in the /proc/ipipe/trace/max file does not
> have the xenomai calls that I am invoking e.g. rt_timer_read.
The I-pipe tracer is a kernel-space tracer, so, you will only get the
trace for the services which emit a system call. So, when calling
rt_timer_read, you should see __rt_timer_read in the trace.
You can find all the documentation we have about the I-pipe tracer here:
http://www.xenomai.org/index.php/I-pipe:Tracer
--
Gilles.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Need help with ipipe trace
2012-03-01 19:38 ` Gilles Chanteperdrix
@ 2012-03-01 20:02 ` Makarand Pradhan
2012-03-01 20:28 ` Gilles Chanteperdrix
0 siblings, 1 reply; 5+ messages in thread
From: Makarand Pradhan @ 2012-03-01 20:02 UTC (permalink / raw)
To: Gilles Chanteperdrix; +Cc: xenomai@xenomai.org
Thanks Gilles for your prompt response.
Yes. I am aware that it is a kernel-space tracer and I do see __rt_timer_read in the frozen file.
: + func -102 0.757 hisyscall_event+0x8 (__ipipe_dispatch_event+0x1c0)
: + func -102 0.803 __rt_timer_read+0x8 [xeno_native] (hisyscall_event+0x1e4)
: + func -101 0.787 xnarch_get_cpu_time+0x8 (__rt_timer_read+0x30 [xeno_native])
: + func -100+ 1.030 xnarch_tsc_to_ns+0x8 (xnarch_get_cpu_time+0x4c)
:| + begin 0x80000001 -99 0.590 __ipipe_dispatch_event+0x1e8 (__ipipe_syscall_root+0x6c)
:| + end 0x80000001 -98 0.681 __ipipe_dispatch_event+0x240 (__ipipe_syscall_root+0x6c)
The Documentation pointed was referred to start using the tracer but am not completely successful in getting the trace using xntrace_max_begin/end. So would highly appreciate your views on the same. Also your inputs on the unsigned int passed in to xntrace_max_being would be highly appreciated.
I am trying to trace the interrupts with a timestamp and could not see
any int processing in the traces. Will the tracer capture the interrupts
and the ISRs being invoked?
Thanks and Rgds,
Mak.
On 01/03/12 02:38 PM, Gilles Chanteperdrix wrote:
> On 03/01/2012 08:20 PM, Makarand Pradhan wrote:
>> Hi,
>>
>> I am trying to get an ipipe trace and need help to get it working.
>>
>> I am using Xenomai 2.6 with linux 3.0.0.
>>
>> The kernel is compiled with following config parameters:
>>
>> CONFIG_IPIPE_DEBUG=y
>> CONFIG_IPIPE_DEBUG_CONTEXT=y
>> CONFIG_IPIPE_DEBUG_INTERNAL=y
>> CONFIG_IPIPE_TRACE=y
>> CONFIG_IPIPE_TRACE_ENABLE=y
>> CONFIG_IPIPE_TRACE_MCOUNT=y
>> CONFIG_IPIPE_TRACE_IRQSOFF=y
>> CONFIG_IPIPE_TRACE_SHIFT=14
>> CONFIG_IPIPE_TRACE_VMALLOC=y
>> CONFIG_IPIPE_TRACE_PANIC=y
>> CONFIG_DEBUG_KERNEL=y
>>
>> The /proc/ipipe direcotry is created.
>>
>> In my application I am using:
>>
>> xntrace_max_begin(0); -> To start tracing.
>> xntrace_max_end(0); -> To stop tracing.
>>
>> The function trace that I get in the /proc/ipipe/trace/max file does not
>> have the xenomai calls that I am invoking e.g. rt_timer_read.
> The I-pipe tracer is a kernel-space tracer, so, you will only get the
> trace for the services which emit a system call. So, when calling
> rt_timer_read, you should see __rt_timer_read in the trace.
>
> You can find all the documentation we have about the I-pipe tracer here:
> http://www.xenomai.org/index.php/I-pipe:Tracer
>
--
___________________________________________________________________________
NOTICE OF CONFIDENTIALITY:
This e-mail and any attachments may contain confidential and privileged information. If you are
not the intended recipient, please notify the sender immediately by return e-mail and delete this
e-mail and any copies. Any dissemination or use of this information by a person other than the
intended recipient is unauthorized and may be illegal.
_____________________________________________________________________
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Need help with ipipe trace
2012-03-01 20:02 ` Makarand Pradhan
@ 2012-03-01 20:28 ` Gilles Chanteperdrix
2012-03-01 20:57 ` Makarand Pradhan
0 siblings, 1 reply; 5+ messages in thread
From: Gilles Chanteperdrix @ 2012-03-01 20:28 UTC (permalink / raw)
To: Makarand Pradhan; +Cc: xenomai@xenomai.org
On 03/01/2012 09:02 PM, Makarand Pradhan wrote:
> Thanks Gilles for your prompt response.
>
> Yes. I am aware that it is a kernel-space tracer and I do see
> __rt_timer_read in the frozen file.
>
> : + func -102 0.757 hisyscall_event+0x8
> (__ipipe_dispatch_event+0x1c0) : + func -102
> 0.803 __rt_timer_read+0x8 [xeno_native] (hisyscall_event+0x1e4) :
> + func -101 0.787 xnarch_get_cpu_time+0x8
> (__rt_timer_read+0x30 [xeno_native]) : + func -100+
> 1.030 xnarch_tsc_to_ns+0x8 (xnarch_get_cpu_time+0x4c) :| + begin
> 0x80000001 -99 0.590 __ipipe_dispatch_event+0x1e8
> (__ipipe_syscall_root+0x6c) :| + end 0x80000001 -98 0.681
> __ipipe_dispatch_event+0x240 (__ipipe_syscall_root+0x6c)
>
>
> The Documentation pointed was referred to start using the tracer but
> am not completely successful in getting the trace using
> xntrace_max_begin/end. So would highly appreciate your views on the
> same. Also your inputs on the unsigned int passed in to
> xntrace_max_being would be highly appreciated.
Never tried xntrace_max_*
>
> I am trying to trace the interrupts with a timestamp and could not
> see any int processing in the traces. Will the tracer capture the
> interrupts and the ISRs being invoked?
I never had any problem observing interrupts. Maybe you do not have
enough points in the trace?
>
> Thanks and Rgds, Mak.
>
>
>
> On 01/03/12 02:38 PM, Gilles Chanteperdrix wrote:
>> On 03/01/2012 08:20 PM, Makarand Pradhan wrote:
>>> Hi,
>>>
>>> I am trying to get an ipipe trace and need help to get it
>>> working.
>>>
>>> I am using Xenomai 2.6 with linux 3.0.0.
>>>
>>> The kernel is compiled with following config parameters:
>>>
>>> CONFIG_IPIPE_DEBUG=y CONFIG_IPIPE_DEBUG_CONTEXT=y
>>> CONFIG_IPIPE_DEBUG_INTERNAL=y CONFIG_IPIPE_TRACE=y
>>> CONFIG_IPIPE_TRACE_ENABLE=y CONFIG_IPIPE_TRACE_MCOUNT=y
>>> CONFIG_IPIPE_TRACE_IRQSOFF=y CONFIG_IPIPE_TRACE_SHIFT=14
>>> CONFIG_IPIPE_TRACE_VMALLOC=y CONFIG_IPIPE_TRACE_PANIC=y
>>> CONFIG_DEBUG_KERNEL=y
>>>
>>> The /proc/ipipe direcotry is created.
>>>
>>> In my application I am using:
>>>
>>> xntrace_max_begin(0); -> To start tracing. xntrace_max_end(0);
>>> -> To stop tracing.
>>>
>>> The function trace that I get in the /proc/ipipe/trace/max file
>>> does not have the xenomai calls that I am invoking e.g.
>>> rt_timer_read.
>> The I-pipe tracer is a kernel-space tracer, so, you will only get
>> the trace for the services which emit a system call. So, when
>> calling rt_timer_read, you should see __rt_timer_read in the
>> trace.
>>
>> You can find all the documentation we have about the I-pipe tracer
>> here: http://www.xenomai.org/index.php/I-pipe:Tracer
>>
>
>
--
Gilles.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Need help with ipipe trace
2012-03-01 20:28 ` Gilles Chanteperdrix
@ 2012-03-01 20:57 ` Makarand Pradhan
0 siblings, 0 replies; 5+ messages in thread
From: Makarand Pradhan @ 2012-03-01 20:57 UTC (permalink / raw)
To: Gilles Chanteperdrix; +Cc: xenomai@xenomai.org
Thanks Gilles.
That was very helpful. I can now see the intr handlers after increasing
the back_trace_points to 5000.
Rgds,
Mak.
On 01/03/12 03:28 PM, Gilles Chanteperdrix wrote:
> On 03/01/2012 09:02 PM, Makarand Pradhan wrote:
>> Thanks Gilles for your prompt response.
>>
>> Yes. I am aware that it is a kernel-space tracer and I do see
>> __rt_timer_read in the frozen file.
>>
>> : + func -102 0.757 hisyscall_event+0x8
>> (__ipipe_dispatch_event+0x1c0) : + func -102
>> 0.803 __rt_timer_read+0x8 [xeno_native] (hisyscall_event+0x1e4) :
>> + func -101 0.787 xnarch_get_cpu_time+0x8
>> (__rt_timer_read+0x30 [xeno_native]) : + func -100+
>> 1.030 xnarch_tsc_to_ns+0x8 (xnarch_get_cpu_time+0x4c) :| + begin
>> 0x80000001 -99 0.590 __ipipe_dispatch_event+0x1e8
>> (__ipipe_syscall_root+0x6c) :| + end 0x80000001 -98 0.681
>> __ipipe_dispatch_event+0x240 (__ipipe_syscall_root+0x6c)
>>
>>
>> The Documentation pointed was referred to start using the tracer but
>> am not completely successful in getting the trace using
>> xntrace_max_begin/end. So would highly appreciate your views on the
>> same. Also your inputs on the unsigned int passed in to
>> xntrace_max_being would be highly appreciated.
> Never tried xntrace_max_*
>
>> I am trying to trace the interrupts with a timestamp and could not
>> see any int processing in the traces. Will the tracer capture the
>> interrupts and the ISRs being invoked?
> I never had any problem observing interrupts. Maybe you do not have
> enough points in the trace?
>
>> Thanks and Rgds, Mak.
>>
>>
>>
>> On 01/03/12 02:38 PM, Gilles Chanteperdrix wrote:
>>> On 03/01/2012 08:20 PM, Makarand Pradhan wrote:
>>>> Hi,
>>>>
>>>> I am trying to get an ipipe trace and need help to get it
>>>> working.
>>>>
>>>> I am using Xenomai 2.6 with linux 3.0.0.
>>>>
>>>> The kernel is compiled with following config parameters:
>>>>
>>>> CONFIG_IPIPE_DEBUG=y CONFIG_IPIPE_DEBUG_CONTEXT=y
>>>> CONFIG_IPIPE_DEBUG_INTERNAL=y CONFIG_IPIPE_TRACE=y
>>>> CONFIG_IPIPE_TRACE_ENABLE=y CONFIG_IPIPE_TRACE_MCOUNT=y
>>>> CONFIG_IPIPE_TRACE_IRQSOFF=y CONFIG_IPIPE_TRACE_SHIFT=14
>>>> CONFIG_IPIPE_TRACE_VMALLOC=y CONFIG_IPIPE_TRACE_PANIC=y
>>>> CONFIG_DEBUG_KERNEL=y
>>>>
>>>> The /proc/ipipe direcotry is created.
>>>>
>>>> In my application I am using:
>>>>
>>>> xntrace_max_begin(0); -> To start tracing. xntrace_max_end(0);
>>>> -> To stop tracing.
>>>>
>>>> The function trace that I get in the /proc/ipipe/trace/max file
>>>> does not have the xenomai calls that I am invoking e.g.
>>>> rt_timer_read.
>>> The I-pipe tracer is a kernel-space tracer, so, you will only get
>>> the trace for the services which emit a system call. So, when
>>> calling rt_timer_read, you should see __rt_timer_read in the
>>> trace.
>>>
>>> You can find all the documentation we have about the I-pipe tracer
>>> here: http://www.xenomai.org/index.php/I-pipe:Tracer
>>>
>>
>
--
___________________________________________________________________________
NOTICE OF CONFIDENTIALITY:
This e-mail and any attachments may contain confidential and privileged information. If you are
not the intended recipient, please notify the sender immediately by return e-mail and delete this
e-mail and any copies. Any dissemination or use of this information by a person other than the
intended recipient is unauthorized and may be illegal.
_____________________________________________________________________
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-03-01 20:57 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-01 19:20 [Xenomai-help] Need help with ipipe trace Makarand Pradhan
2012-03-01 19:38 ` Gilles Chanteperdrix
2012-03-01 20:02 ` Makarand Pradhan
2012-03-01 20:28 ` Gilles Chanteperdrix
2012-03-01 20:57 ` Makarand Pradhan
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.