All of lore.kernel.org
 help / color / mirror / Atom feed
* [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.