|
From: Frederic W. <fwe...@gm...> - 2009-09-14 03:00:05
|
On Fri, Sep 11, 2009 at 12:03:30PM -0400, Masami Hiramatsu wrote: > Frederic Weisbecker wrote: >> May be another step in the todo-list that would be nice: define the format >> for a type. Like it's done from ftrace events. > > Thanks! > > BTW, I'm not sure what the type means. Each event already has its own > event ID and event_call. Could you tell me which part of ftrace I should > refer to ? > Actually I meant the format for a field. Say you define filename=arg1, it would be nice to have print "%s", filename in the format file. Hmm, now that I think about it, we can't dereference an array...for now :-) >> I guess we should choose between the low level, very granular >> but uninviting method "kprobe + record + trace" and also an all >> in one quick approach. >> >> And that could be chosen from perf kprobe: >> >> Low level: >> >> perf kprobe --define-only [-p|-r] [probe_name] -a1 [arg1] -a2 [arg2] \ >> --format="%s %...." >> >> perf record -e kprobes:probe_name >> perf trace >> >> Quick: >> >> perf kprobe -p probe_name -a1 ..... cmdline| -a >> >> And after the profiled task is finished, it could launch perf trace >> by itself (or wait for a Ctrl + C if -a/wide profiling) > > Another thought: expand record subcommand. > > perf record -E "p|r:probe_name,place,arg1,arg2..." > perf trace > > And kprobe accept multiple definitions > > perf kprobe -E "p|r:probe_name,place,arg1,arg2..." -E ... Well, perf record could also support multiple definitions too... |