[lkml]   [2014]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC] perf-cache command interface design

Here is the second try for the probe-cache. This version simplifies
the synopsis, and unifies the SDT and probe caches.
Please give me your comments/ideas!

Command-line Synopsis

Add elf(or symbols) and probe-caches of SDT if exists in <FILES>
perf cache --add <FILES> [--probe <SPEC>] # for user programs

perf cache --kcore <FILE> [--probe <SPEC>] # for kcore ?

perf cache --probe <SPEC> # for the current kernel

Remove caches related to <FILES> or <BUILDIDS>
perf cache --remove <FILES>|<BUILDIDS>

Show all probe caches(including SDT) or buildids
perf cache --list [probe|buildid]

Delete existing probe-cache entries for kernel, <PATH> or/and <BUILDID>.
perf cache --probe-del [<GROUP>:]<EVENT>[@<PATH>][#<BUILDID>]

Query the probe definitions.
perf cache --query [<GROUP>:]<EVENT>[@<PATH>][#<BUILDID>]

File Format
All the cache files are placed under ~/.debug/ by default.
Elf caches are ~/.debug/path/to/file/bu/ildid/elf
Symbols caches are ~/.debug/path/to/file/bu/ildid/syms
Probes(and SDT) are ~/.debug/path/to/file/bu/ildid/probes
And ~/.debug/path/to/file/bu/ildid/ is linked to ~/.debug/.buildid/bu/ildid
Optionally, we can gzip the probes file.

This probe caches contain probe-definitions as following format.
#spec:* $params
p:probe_<GROUP>/<EVENT> _text+OFFSET [ARGS]
So the #spec: line gives the information what probe spec has been given.
This will be used for updating.

And all the "probe_" and "sdt_" prefix will be replaced by % in the command line,

perf record -e %<PROVIDER>/<EVENT> -> this records sdt_PROVIDER/EVENT

Thank you,

Software Platform Research Dept. Linux Technology Research Center
Hitachi, Ltd., Yokohama Research Laboratory

 \ /
  Last update: 2014-11-10 12:41    [W:0.200 / U:0.764 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site