2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-28 23:23:55 +08:00
linux-next/tools/perf
Arnaldo Carvalho de Melo 752fde44fd perf trace: Support interrupted syscalls
Using the same strategies as in the tmp.perf/trace2, i.e. the 'trace'
tool implemented by tglx, just updated to the current codebase.

Example:

[root@sandy linux]# perf trace usleep 1  | tail
     2.003: mmap(addr: 0, len: 4096, prot: 3, flags: 34, fd: 4294967295, off: 0   ) = -2128396288
     2.017: mmap(addr: 0, len: 4096, prot: 3, flags: 34, fd: 4294967295, off: 0   ) = -2128400384
     2.029: arch_prctl(option: 4098, arg2: 140146949441280, arg3: 140146949435392, arg4: 34, arg5: 4294967295) = 0
     2.084: mprotect(start: 208741634048, len: 16384, prot: 1                     ) = 0
     2.098: mprotect(start: 208735956992, len: 4096, prot: 1                      ) = 0
     2.122: munmap(addr: 140146949447680, len: 91882                              ) = 0
     2.359: brk(brk: 0                                                            ) = 28987392
     2.371: brk(brk: 29122560                                                     ) = 29122560
     2.490: nanosleep(rqtp: 140735694241504, rmtp: 0                              ) = 0
     2.507: exit_group(error_code: 0
[root@sandy linux]#

For now the timestamp and duration are always on, will be selectable.

Also if multiple threads are being monitored, its tid will appear.

The ret output continues to be interpreted a la strace.

Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-ly9ulroru4my5isn0xe9gr0m@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-10-24 17:23:03 -02:00
..
arch perf tools: Try to find cross-built objdump path 2012-10-24 14:20:11 -02:00
bench perf tools: Use __maybe_used for unused variables 2012-09-11 12:19:15 -03:00
config perf tools: Remove noise in python version feature test 2012-10-24 14:20:10 -02:00
Documentation Documentation: add documentation on compiling for Android 2012-10-08 17:44:39 -03:00
python perf python: Use attr.watermark in twatch.py 2012-01-30 18:38:23 -02:00
scripts perf scripts: Add event_analyzing_sample-record/report 2012-09-17 13:11:15 -03:00
ui Merge branch 'perf/urgent' into perf/core 2012-10-24 10:20:57 +02:00
util perf trace: Support interrupted syscalls 2012-10-24 17:23:03 -02:00
.gitignore perf tools: Ignore compiled python binaries 2012-09-07 12:10:58 -03:00
bash_completion perf tools: Complete tracepoint event names 2012-10-04 12:44:52 -03:00
builtin-annotate.c perf tools: Try to find cross-built objdump path 2012-10-24 14:20:11 -02:00
builtin-bench.c perf tools: Use __maybe_used for unused variables 2012-09-11 12:19:15 -03:00
builtin-buildid-cache.c perf buildid-cache: Don't use globals where not needed to 2012-10-02 18:36:35 -03:00
builtin-buildid-list.c perf buildid-list: Don't use globals where not needed to 2012-10-02 18:36:36 -03:00
builtin-diff.c perf event: No need to create a thread when handling PERF_RECORD_EXIT 2012-10-06 16:33:45 -03:00
builtin-evlist.c perf evlist: Don't use globals where not needed to 2012-10-02 18:36:39 -03:00
builtin-help.c perf help: Fix --help for builtins 2012-10-22 12:35:49 -02:00
builtin-inject.c perf event: No need to create a thread when handling PERF_RECORD_EXIT 2012-10-06 16:33:45 -03:00
builtin-kmem.c perf kmem: Don't use globals where not needed to 2012-10-02 18:36:32 -03:00
builtin-kvm.c perf kvm: Add braces around multi-line statements 2012-10-08 17:15:54 -03:00
builtin-list.c perf tools: Use __maybe_used for unused variables 2012-09-11 12:19:15 -03:00
builtin-lock.c perf lock: Don't use globals where not needed to 2012-10-02 18:36:33 -03:00
builtin-probe.c perf probe: Don't use globals where not needed to 2012-10-02 18:36:37 -03:00
builtin-record.c perf tools: Give user better message if precise is not supported 2012-10-24 14:20:11 -02:00
builtin-report.c perf tools: Try to find cross-built objdump path 2012-10-24 14:20:11 -02:00
builtin-sched.c perf sched: Handle PERF_RECORD_EXIT events 2012-10-06 16:34:03 -03:00
builtin-script.c perf event: No need to create a thread when handling PERF_RECORD_EXIT 2012-10-06 16:33:45 -03:00
builtin-stat.c perf stat: Don't use globals where not needed to 2012-10-02 18:36:29 -03:00
builtin-test.c perf test: Align the 'Ok'/'FAILED!' test results 2012-10-24 15:44:41 -02:00
builtin-timechart.c perf timechart: Don't use globals where not needed to 2012-10-02 18:36:34 -03:00
builtin-top.c perf tools: Give user better message if precise is not supported 2012-10-24 14:20:11 -02:00
builtin-trace.c perf trace: Support interrupted syscalls 2012-10-24 17:23:03 -02:00
builtin.h perf trace: New tool 2012-09-26 20:42:23 -03:00
command-list.txt perf trace: New tool 2012-09-26 20:42:23 -03:00
CREDITS perf_counter tools: Add CREDITS file for Git contributors 2009-06-24 19:54:29 +02:00
design.txt perf tools: Update ioctl documentation for PERF_IOC_FLAG_GROUP 2012-05-31 11:38:42 -03:00
Makefile perf tools: Try to find cross-built objdump path 2012-10-24 14:20:11 -02:00
MANIFEST perf kvm: Events analysis tool 2012-09-21 12:51:22 -03:00
perf-archive.sh perf archive: Make 'f' the last parameter for tar 2012-09-17 13:10:42 -03:00
perf.c perf tools: Have the page size value available for all tools 2012-10-06 16:33:14 -03:00
perf.h perf/urgent fixes: 2012-10-20 02:40:26 +02:00