Messages in this thread | | | Date | Wed, 19 Aug 2015 17:30:12 +0900 | From | Namhyung Kim <> | Subject | Re: [RFC PATCH perf/core v3 00/17] perf-probe --cache and SDT support |
| |
Hi Masami,
On Sat, Aug 15, 2015 at 08:42:53PM +0900, Masami Hiramatsu wrote: > Hi, > > Here is the 3rd version of the patchset for probe-cache and > initial SDT support which are going to be perf-cache finally. > > The previous version is here; https://lkml.org/lkml/2015/7/15/221 > > This version improves SDT support for perf-list and perf-record. > It is still just a basic support (no wildcard support, nor > @FILE/@BUILDID support). So this is an ongoing work report :) > > As we discussed on the previous series, now all SDT events have > "sdt_" prefix on the provider name. We also should support "@FILE" > or "@BUILDID" suffixes for same-name SDTs. > > perf-list shows only SDTs on existing binaries (no old/deleted > files) and if the same-name events are shown, it adds > "@FILE@BUILDID" suffixes after the events to clarify on which > binary the SDT exists. > > ---- > # perf buildid-cache -a /usr/bin/gcc > # perf list sdt > > List of pre-defined events (to be used in -e): > > sdt_libgcc:unwind [SDT event] > sdt_libstdcxx:catch [SDT event] > sdt_libstdcxx:rethrow [SDT event] > sdt_libstdcxx:throw [SDT event] > # perf buildid-cache -a /usr/lib/libstdc++.so.6 > # perf list sdt > > List of pre-defined events (to be used in -e): > > sdt_libgcc:unwind [SDT event] > sdt_libstdcxx:catch@/usr/bin/gcc@0x05d261236bbb [SDT event] > sdt_libstdcxx:catch@/usr/lib/libstdc++.so.6.0.19@0xcd6ac0e6236c [SDT event] > sdt_libstdcxx:rethrow@/usr/bin/gcc@0x05d261236bbb [SDT event] > sdt_libstdcxx:rethrow@/usr/lib/libstdc++.so.6.0.19@0xcd6ac0e6236c [SDT event] > sdt_libstdcxx:throw@/usr/bin/gcc@0x05d261236bbb [SDT event] > sdt_libstdcxx:throw@/usr/lib/libstdc++.so.6.0.19@0xcd6ac0e6236c [SDT event] > ---- > > In this version, I used "@" separater for both FILE and BUILDID, > but I think it is also possible to use "%" for BUILDID. > (BTW, I've cut down the BUILDID to the first 12 chars, and added "0x") > > TODOs: > - (perf record) Allow glob matching for SDT event to specify events. > - (perf record) Support @FILE/@BUILDID suffix to record specific SDTs. > - (perf record) Try to unregister SDT events after record. > - (perf probe) Allow glob matching for pre-cached events. > - (perf probe) Support @FILE/@BUILDID suffix for pre-cached events. > (also removes -x option when using pre-cached events) > - (ftrace) Support multiple SDTs on single event. > > Since multiple same SDTs are defined in a single binary (e.g. libc:setjump > has 3 different entries on libc-2.17.so), we need the last feature on > ftrace, so that a single uprobe event can occur several different > probe points.
Do you want to have multiple events of same name in the kernel? Or to make perf handle those same names with different kernel events?
Thanks, Namhyung
| |