[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20160714165905.b65d6e6ae51732297a61a5b8@kernel.org>
Date: Thu, 14 Jul 2016 16:59:05 +0900
From: Masami Hiramatsu <mhiramat@...nel.org>
To: Arnaldo Carvalho de Melo <acme@...nel.org>
Cc: linux-kernel@...r.kernel.org, Namhyung Kim <namhyung@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Hemant Kumar <hemant@...ux.vnet.ibm.com>,
Ananth N Mavinakayanahalli <ananth@...ux.vnet.ibm.com>,
Brendan Gregg <brendan.d.gregg@...il.com>
Subject: Re: perf probe: Seaching the cache automatically
On Wed, 13 Jul 2016 16:11:37 -0300
Arnaldo Carvalho de Melo <acme@...nel.org> wrote:
> Hi Masami,
>
> While reviewing your latest patchkit I figured out I left some
> sdt entries in my cache, cool! Tried to use but:
>
> [root@...et 22]# perf probe --cache --list
> /usr/lib64/libc-2.23.so (88686319c72f1a9d9cd514af519aa5602880bab2):
> sdt_libc:setjmp=setjmp
> sdt_libc:longjmp=longjmp
> sdt_libc:longjmp_target=longjmp_target
> sdt_libc:memory_arena_reuse_free_list=memory_arena_reuse_free_list
> sdt_libc:memory_heap_new=memory_heap_new
> sdt_libc:memory_sbrk_less=memory_sbrk_less
> sdt_libc:memory_arena_reuse_wait=memory_arena_reuse_wait
> sdt_libc:memory_arena_reuse=memory_arena_reuse
> sdt_libc:memory_arena_new=memory_arena_new
> sdt_libc:memory_arena_retry=memory_arena_retry
> sdt_libc:memory_heap_free=memory_heap_free
> sdt_libc:memory_heap_less=memory_heap_less
> sdt_libc:memory_heap_more=memory_heap_more
> sdt_libc:memory_sbrk_more=memory_sbrk_more
> sdt_libc:memory_malloc_retry=memory_malloc_retry
> sdt_libc:memory_mallopt_free_dyn_thresholds=memory_mallopt_free_dyn_thresholds
> sdt_libc:memory_realloc_retry=memory_realloc_retry
> sdt_libc:memory_memalign_retry=memory_memalign_retry
> sdt_libc:memory_calloc_retry=memory_calloc_retry
> sdt_libc:memory_mallopt=memory_mallopt
> sdt_libc:memory_mallopt_mxfast=memory_mallopt_mxfast
> sdt_libc:memory_mallopt_arena_max=memory_mallopt_arena_max
> sdt_libc:memory_mallopt_arena_test=memory_mallopt_arena_test
> sdt_libc:memory_mallopt_mmap_max=memory_mallopt_mmap_max
> sdt_libc:memory_mallopt_mmap_threshold=memory_mallopt_mmap_threshold
> sdt_libc:memory_mallopt_top_pad=memory_mallopt_top_pad
> sdt_libc:memory_mallopt_trim_threshold=memory_mallopt_trim_threshold
> sdt_libc:memory_mallopt_perturb=memory_mallopt_perturb
> sdt_libc:memory_mallopt_check_action=memory_mallopt_check_action
> sdt_libc:lll_lock_wait_private=lll_lock_wait_private
> [root@...et 22]#
>
> [root@...et 22]# perf record --event sdt_libc:memory_heap_new -a
> event syntax error: 'sdt_libc:memory_heap_new'
> \___ unknown tracepoint
>
> Error: File /sys/kernel/debug/tracing/events/sdt_libc/memory_heap_new not found.
> Hint: Perhaps this kernel misses some CONFIG_ setting to enable this feature?.
>
> Run 'perf list' for a list of valid events
>
> Usage: perf record [<options>] [<command>]
> or: perf record [<options>] -- <command> [<options>]
>
> -e, --event <event> event selector. use 'perf list' to list available events
> [root@...et 22]#
>
> So probably I need to do something else, will dig that, scratching my head, as
> my expectation was that it would look at that cache and pick things from there,
> etc. Perhaps this is in a patch in this series, will check...
Ah, yes, that is currently under development. What happened in the series is I dropped
direct SDT record, because I felt it was not prepared to be merged. This is why
perf list still doesn't show the SDT events. (only perf-probe shows it)
So, currently, you have to use perf-probe to set up SDT events as same as
other dynamic events. So, before run the perf record, please run below command.
# perf probe sdt_libc:memory_heap_new
Then you can record the event.
Thanks,
--
Masami Hiramatsu <mhiramat@...nel.org>
Powered by blists - more mailing lists