linux/tools/perf/tests
Kan Liang f9db0d0f1b perf callchain: Allow disabling call graphs per event
This patch introduce "call-graph=no" to disable per-event callgraph.

Here is an example.

  perf record -e 'cpu/cpu-cycles,call-graph=fp/,cpu/instructions,call-graph=no/' sleep 1

  perf report --stdio

  # To display the perf.data header info, please use
  --header/--header-only options.
  #
  #
  # Total Lost Samples: 0
  #
  # Samples: 6  of event 'cpu/cpu-cycles,call-graph=fp/'
  # Event count (approx.): 774218
  #
  # Children      Self  Command  Shared Object     Symbol
  # ........  ........  .......  ................  ........................................
  #
    61.94%     0.00%  sleep    [kernel.vmlinux]  [k] entry_SYSCALL_64_fastpath
              |
              ---entry_SYSCALL_64_fastpath
                 |
                 |--97.30%-- __brk
                 |
                  --2.70%-- mmap64
                            _dl_check_map_versions
                            _dl_check_all_versions

    61.94%     0.00%  sleep    [kernel.vmlinux]  [k] perf_event_mmap
              |
              ---perf_event_mmap
                 |
                 |--97.30%-- do_brk
                 |          sys_brk
                 |          entry_SYSCALL_64_fastpath
                 |          __brk
                 |
                  --2.70%-- mmap_region
                            do_mmap_pgoff
                            vm_mmap_pgoff
                            sys_mmap_pgoff
                            sys_mmap
                            entry_SYSCALL_64_fastpath
                            mmap64
                            _dl_check_map_versions
                            _dl_check_all_versions
  ......

  # Samples: 6  of event 'cpu/instructions,call-graph=no/'
  # Event count (approx.): 359692
  #
  # Children      Self  Command  Shared Object     Symbol
  # ........  ........  .......  ................  .................................
  #
     89.03%     0.00%  sleep    [unknown]         [.] 0xffff6598ffff6598
     89.03%     0.00%  sleep    ld-2.17.so        [.] _dl_resolve_conflicts
     89.03%     0.00%  sleep    [kernel.vmlinux]  [k] page_fault

Signed-off-by: Kan Liang <kan.liang@intel.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1439289050-40510-2-git-send-email-kan.liang@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2015-08-12 13:20:28 -03:00
..
attr perf tests: Fix attr tests 2015-04-08 10:49:53 -03:00
attr.c tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
attr.py perf tools: Remove EOL whitespaces 2015-01-21 13:24:31 -03:00
bp_signal_overflow.c perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
bp_signal.c perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
Build perf tests: Add LLVM test for eBPF on-the-fly compiling 2015-08-07 10:57:24 -03:00
builtin-test.c perf tests: Add LLVM test for eBPF on-the-fly compiling 2015-08-07 10:57:24 -03:00
code-reading.c perf tools: Add reference counting for thread_map object 2015-06-25 15:15:50 -03:00
dso-data.c perf tools: Reference count struct dso 2015-06-08 10:31:40 -03:00
dwarf-unwind.c perf tools: Configurable per thread proc map processing time out 2015-06-19 18:27:13 -03:00
evsel-roundtrip-name.c perf tools: Add parse_events_error interface 2015-04-29 10:37:58 -03:00
evsel-tp-sched.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
fdarray.c tools lib fd array: Allow associating an integer cookie with each entry 2014-09-25 16:46:55 -03:00
hists_common.c perf tools: Reference count struct dso 2015-06-08 10:31:40 -03:00
hists_common.h perf tests: Define and use symbolic names for fake symbols 2014-06-01 14:35:11 +02:00
hists_cumulate.c perf callchain: Allow disabling call graphs per event 2015-08-12 13:20:28 -03:00
hists_filter.c perf hists: Reducing arguments of hist_entry_iter__add() 2015-05-27 12:21:43 -03:00
hists_link.c perf machine: Protect the machine->threads with a rwlock 2015-05-08 16:19:27 -03:00
hists_output.c perf hists: Reducing arguments of hist_entry_iter__add() 2015-05-27 12:21:43 -03:00
keep-tracking.c perf tools: Add reference counting for thread_map object 2015-06-25 15:15:50 -03:00
kmod-path.c perf tools: Deal with kernel module names in '[]' correctly 2015-06-03 10:02:38 -03:00
llvm.c perf tests: Add LLVM test for eBPF on-the-fly compiling 2015-08-07 10:57:24 -03:00
make perf tests: Adding build test for having ending double slash 2015-07-30 12:23:08 -03:00
mmap-basic.c perf tools: Add reference counting for thread_map object 2015-06-25 15:15:50 -03:00
mmap-thread-lookup.c perf tools: Add reference counting for thread_map object 2015-06-25 15:15:50 -03:00
openat-syscall-all-cpus.c perf stat: Make stats work over the thread dimension 2015-06-26 11:20:02 -03:00
openat-syscall-tp-fields.c perf thread_map: Don't access the array entries directly 2015-06-23 18:21:44 -03:00
openat-syscall.c perf stat: Make stats work over the thread dimension 2015-06-26 11:20:02 -03:00
parse-events.c perf tools: Force period term to overload global settings 2015-07-29 16:18:21 -03:00
parse-no-sample-id-all.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
perf-record.c perf evlist: Introduce poll method for common code idiom 2014-09-25 16:46:55 -03:00
perf-targz-src-pkg perf tools: Add test for building detached source tarballs 2014-01-13 10:06:26 -03:00
perf-time-to-tsc.c perf tools: Add parse_events_error interface 2015-04-29 10:37:58 -03:00
pmu.c perf tools: Add term support for parse_events_error 2015-04-29 10:38:01 -03:00
python-use.c perf tests: Check python path on attr and binding test 2013-01-24 16:40:10 -03:00
rdpmc.c perf test: Use strerror_r instead of strerror 2014-08-15 13:07:28 -03:00
sample-parsing.c perf tests: Fix typo in sample-parsing.c 2015-01-22 17:03:01 -03:00
sw-clock.c perf test: Use strerror_r instead of strerror 2014-08-15 13:07:28 -03:00
switch-tracking.c perf tools: Add reference counting for thread_map object 2015-06-25 15:15:50 -03:00
task-exit.c perf evlist: Introduce poll method for common code idiom 2014-09-25 16:46:55 -03:00
tests.h perf tests: Add LLVM test for eBPF on-the-fly compiling 2015-08-07 10:57:24 -03:00
thread-map.c perf test: Check for refcnt in thread_map test 2015-07-21 14:20:32 -03:00
thread-mg-share.c perf tools: Use atomic.h for the map_groups refcount 2015-05-15 15:20:44 -03:00
vmlinux-kallsyms.c perf tools: Introduce struct maps 2015-05-27 20:21:41 -03:00