All of lore.kernel.org
 help / color / mirror / Atom feed
* Howto make perf probe work
@ 2013-03-31 17:30 OSDepend
       [not found] ` <CAGJbQddYW4-QZUvGpwCbmVhsvGEan5UkgRbXq+w4i+9Ob9vUrw@mail.gmail.com>
  0 siblings, 1 reply; 8+ messages in thread
From: OSDepend @ 2013-03-31 17:30 UTC (permalink / raw)
  To: linux-perf-users

Hi all,
	Is there any way to use perf probe to add new tracepoint like pagefault enter/exit?
	
	When I type perf probe fault:10
	I always get the error as follow:

		Debuginfo-analysis is not supported.
		Error: Failed to add events. (-38)
	
	What exactly i miss to get the perf probe work correctly?

Best,
Chen

2013-04-01



zhengchen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Howto make perf probe work
       [not found] ` <CAGJbQddYW4-QZUvGpwCbmVhsvGEan5UkgRbXq+w4i+9Ob9vUrw@mail.gmail.com>
@ 2013-04-01 15:20   ` OSDepend
  2013-04-01 15:24     ` Fw: Re: " OSDepend
  0 siblings, 1 reply; 8+ messages in thread
From: OSDepend @ 2013-04-01 15:20 UTC (permalink / raw)
  To: nelakurthi koteswararao, linux-perf-users; +Cc: linuxtools-dev


[-- Attachment #1.1: Type: text/plain, Size: 1304 bytes --]

>HI,
>Please enable kprobe_event config option in the kernel and build the same
>and boot the board using it. Then please try to add event using perf probe
>command

Thanks very much for your reply, and I already enable DEBUG_KPROBE_EVENT in kernel.
I did success in "perf probe handle_mm_fault".

But when i want to to "perf probe" other Kernel symbol, such as do_page_fault.
I came across other problems:
Added new event:
Failed to write event: Invalid argument
Error: Failed to add events. (-1)
And when i type perf probe page_fault_entry:
Kernel symbol 'page_fault_entry' not found.
Error: Failed to add events. (-2)
Please notice that "do_page_fault" and "page_fault_entry" are all Kernel symbols, which canbe find in  "/proc/kallsyms", but not recorgonized by perf (or even kprobe).
Any idea for that?

Best,
Chen

>>On Sun, Mar 31, 2013 at 11:00 PM, OSDepend <osdepend-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>>Hi all,
>>        Is there any way to use perf probe to add new tracepoint like pagefault enter/exit?
>>        When I type perf probe fault:10
>>       I always get the error as follow:
>>                Debuginfo-analysis is not supported.
>>                Error: Failed to add events. (-38)
>>        What exactly i miss to get the perf probe work correctly?
>>Best,
>>Chen

[-- Attachment #1.2: Type: text/html, Size: 4718 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Fw: Re: Re: Howto make perf probe work
  2013-04-01 15:20   ` OSDepend
@ 2013-04-01 15:24     ` OSDepend
  2013-04-02  4:36       ` Namhyung Kim
  2013-04-02  9:11       ` OSDepend
  0 siblings, 2 replies; 8+ messages in thread
From: OSDepend @ 2013-04-01 15:24 UTC (permalink / raw)
  To: linux-perf-users; +Cc: nelakurthi koteswararao

>HI,
>Please enable kprobe_event config option in the kernel and build the same
>and boot the board using it. Then please try to add event using perf probe
>command

Thanks very much for your reply, and I already enable DEBUG_KPROBE_EVENT in kernel.
I did success in "perf probe handle_mm_fault".

But when i want to to "perf probe" other Kernel symbol, such as do_page_fault.
I came across other problems:
    Added new event:
    Failed to write event: Invalid argument
    Error: Failed to add events. (-1)
And when i type perf probe page_fault_entry:
    Kernel symbol 'page_fault_entry' not found.
    Error: Failed to add events. (-2)
Please notice that "do_page_fault" and "page_fault_entry" are all Kernel symbols, which canbe find in  "/proc/kallsyms", but not recorgonized by perf (or even kprobe).
Any idea for that?

Best,
Chen

>>On Sun, Mar 31, 2013 at 11:00 PM, OSDepend <osdepend@gmail.com> wrote:
>>Hi all,
>>        Is there any way to use perf probe to add new tracepoint like pagefault enter/exit?
>>        When I type perf probe fault:10
>>       I always get the error as follow:
>>                Debuginfo-analysis is not supported.
>>                Error: Failed to add events. (-38)
>>        What exactly i miss to get the perf probe work correctly?
>>Best,
>>Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Fw: Re: Re: Howto make perf probe work
  2013-04-01 15:24     ` Fw: Re: " OSDepend
@ 2013-04-02  4:36       ` Namhyung Kim
  2013-04-02  9:11       ` OSDepend
  1 sibling, 0 replies; 8+ messages in thread
From: Namhyung Kim @ 2013-04-02  4:36 UTC (permalink / raw)
  To: OSDepend; +Cc: linux-perf-users, nelakurthi koteswararao

> >HI,
> >Please enable kprobe_event config option in the kernel and build the same
> >and boot the board using it. Then please try to add event using perf probe
> >command
> 
> Thanks very much for your reply, and I already enable DEBUG_KPROBE_EVENT in kernel.
> I did success in "perf probe handle_mm_fault".
> 
> But when i want to to "perf probe" other Kernel symbol, such as do_page_fault.
> I came across other problems:
>     Added new event:
>     Failed to write event: Invalid argument
>     Error: Failed to add events. (-1)
> And when i type perf probe page_fault_entry:
>     Kernel symbol 'page_fault_entry' not found.
>     Error: Failed to add events. (-2)
> Please notice that "do_page_fault" and "page_fault_entry" are all Kernel symbols, which canbe find in  "/proc/kallsyms", but not recorgonized by perf (or even kprobe).
> Any idea for that?

For some reason, do_page_fault() is marked as __kprobe on some arch
which means it cannot be probed.

Thanks,
Namhyung

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Re: Fw: Re: Re: Howto make perf probe work
  2013-04-01 15:24     ` Fw: Re: " OSDepend
  2013-04-02  4:36       ` Namhyung Kim
@ 2013-04-02  9:11       ` OSDepend
  2013-04-03  8:09         ` Namhyung Kim
  2013-04-03 17:28         ` OSDepend
  1 sibling, 2 replies; 8+ messages in thread
From: OSDepend @ 2013-04-02  9:11 UTC (permalink / raw)
  To: Namhyung Kim; +Cc: linux-perf-users, nelakurthi koteswararao

Hi Kim,

> > >HI,
> > >Please enable kprobe_event config option in the kernel and build the same
> > >and boot the board using it. Then please try to add event using perf probe
> > >command
> > 
> > Thanks very much for your reply, and I already enable DEBUG_KPROBE_EVENT in kernel.
> > I did success in "perf probe handle_mm_fault".
> > 
> > But when i want to to "perf probe" other Kernel symbol, such as do_page_fault.
> > I came across other problems:
> >     Added new event:
> >     Failed to write event: Invalid argument
> >     Error: Failed to add events. (-1)
> > And when i type perf probe page_fault_entry:
> >     Kernel symbol 'page_fault_entry' not found.
> >     Error: Failed to add events. (-2)
> > Please notice that "do_page_fault" and "page_fault_entry" are all Kernel symbols, which canbe find in  "/proc/kallsyms", but not recorgonized by perf (or even kprobe).
> > Any idea for that?
> For some reason, do_page_fault() is marked as __kprobe on some arch
> which means it cannot be probed.
> Thanks,
> Namhyung

My kernel is runing on X86_64 arch, is there any chance for me to get the do_page_fault() entry/exit work?
Or How can i add a exit tracepoint for handle_mm_fault()? so I can calculate the latency of that fault handle function?

Best,
Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Fw: Re: Re: Howto make perf probe work
  2013-04-02  9:11       ` OSDepend
@ 2013-04-03  8:09         ` Namhyung Kim
  2013-04-03 17:28         ` OSDepend
  1 sibling, 0 replies; 8+ messages in thread
From: Namhyung Kim @ 2013-04-03  8:09 UTC (permalink / raw)
  To: OSDepend; +Cc: linux-perf-users, nelakurthi koteswararao

Hi,

On Tue, 2 Apr 2013 17:11:01 +0800,
>> For some reason, do_page_fault() is marked as __kprobe on some arch
>> which means it cannot be probed.
>
> My kernel is runing on X86_64 arch, is there any chance for me to get the do_page_fault() entry/exit work?

nope, AFAIK.


> Or How can i add a exit tracepoint for handle_mm_fault()? so I can calculate the latency of that fault handle function?

Try "perf probe -a entry=handle_mm_fault -a exit=handle_mm_fault%return"


Thanks,
Namhyung

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Re: Fw: Re: Re: Howto make perf probe work
  2013-04-02  9:11       ` OSDepend
  2013-04-03  8:09         ` Namhyung Kim
@ 2013-04-03 17:28         ` OSDepend
  2013-04-04  6:05           ` Namhyung Kim
  1 sibling, 1 reply; 8+ messages in thread
From: OSDepend @ 2013-04-03 17:28 UTC (permalink / raw)
  To: Namhyung Kim; +Cc: linux-perf-users, nelakurthi koteswararao

Hi,

> > Or How can i add a exit tracepoint for handle_mm_fault()? so I can calculate the latency of that fault handle function?

> Try "perf probe -a entry=handle_mm_fault -a exit=handle_mm_fault%return"

That's works nicely for me! 
Thanks a lot!!

> On Tue, 2 Apr 2013 17:11:01 +0800,
> >> For some reason, do_page_fault() is marked as __kprobe on some arch
> >> which means it cannot be probed.
> >
> > My kernel is runing on X86_64 arch, is there any chance for me to get the do_page_fault() entry/exit work?
> nope, AFAIK.
Is there any guide for us to decide which tracepoint (or other kernel symbol) canbe used, and which cannot? 
For some of the kallsyms cannot be used directly. Such as  do_raw_spin_lock.
	perf probe -a test=do_raw_spin_lock
    Fatal: Kernel symbol 'do_raw_spin_lock' not found - probe not added. 
		
Best,
Chen

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Fw: Re: Re: Howto make perf probe work
  2013-04-03 17:28         ` OSDepend
@ 2013-04-04  6:05           ` Namhyung Kim
  0 siblings, 0 replies; 8+ messages in thread
From: Namhyung Kim @ 2013-04-04  6:05 UTC (permalink / raw)
  To: OSDepend; +Cc: linux-perf-users, nelakurthi koteswararao

Hi,

On Thu, 4 Apr 2013 01:28:34 +0800, OSDepend wrote:
>> On Tue, 2 Apr 2013 17:11:01 +0800, OSDepend wrote:
>> >> For some reason, do_page_fault() is marked as __kprobe on some arch
>> >> which means it cannot be probed.
>> >
>> > My kernel is runing on X86_64 arch, is there any chance for me to get the do_page_fault() entry/exit work?
>> nope, AFAIK.
> Is there any guide for us to decide which tracepoint (or other kernel symbol) canbe used, and which cannot? 
> For some of the kallsyms cannot be used directly. Such as  do_raw_spin_lock.
> 	perf probe -a test=do_raw_spin_lock
>     Fatal: Kernel symbol 'do_raw_spin_lock' not found - probe not added. 

Hmm.. it seems not, currently.

Maybe we can change perf to output the symbol was not able to be probed
after checking symbol address and it's between
__kprobes_text_{start,end}.

I'll take a look at it later.

Thanks,
Namhyung

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-04-04  6:05 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-31 17:30 Howto make perf probe work OSDepend
     [not found] ` <CAGJbQddYW4-QZUvGpwCbmVhsvGEan5UkgRbXq+w4i+9Ob9vUrw@mail.gmail.com>
2013-04-01 15:20   ` OSDepend
2013-04-01 15:24     ` Fw: Re: " OSDepend
2013-04-02  4:36       ` Namhyung Kim
2013-04-02  9:11       ` OSDepend
2013-04-03  8:09         ` Namhyung Kim
2013-04-03 17:28         ` OSDepend
2013-04-04  6:05           ` Namhyung Kim

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.