aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-record.c
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2009-07-16 09:44:29 -0400
committerIngo Molnar <mingo@elte.hu>2009-07-18 05:21:32 -0400
commit4bba828dd9bb950ad1fe340ef148a5436a10f131 (patch)
tree22ff928aaa8d9dd8143eed55b5b5ba2e53ca62d9 /tools/perf/builtin-record.c
parented900c054b541254f0ce5cedaf75206e29bd614e (diff)
perf_counter: Add perf record option to log addresses
Add the -d or --data option to log event addresses (eg page faults). Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <20090716104817.697698033@samba.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/builtin-record.c')
-rw-r--r--tools/perf/builtin-record.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 072aaf0369f8..68a9be0d1513 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -43,6 +43,7 @@ static int call_graph = 0;
43static int verbose = 0; 43static int verbose = 0;
44static int inherit_stat = 0; 44static int inherit_stat = 0;
45static int no_samples = 0; 45static int no_samples = 0;
46static int sample_address = 0;
46 47
47static long samples; 48static long samples;
48static struct timeval last_read; 49static struct timeval last_read;
@@ -405,6 +406,9 @@ static void create_counter(int counter, int cpu, pid_t pid)
405 if (inherit_stat) 406 if (inherit_stat)
406 attr->inherit_stat = 1; 407 attr->inherit_stat = 1;
407 408
409 if (sample_address)
410 attr->sample_type |= PERF_SAMPLE_ADDR;
411
408 if (call_graph) 412 if (call_graph)
409 attr->sample_type |= PERF_SAMPLE_CALLCHAIN; 413 attr->sample_type |= PERF_SAMPLE_CALLCHAIN;
410 414
@@ -649,6 +653,8 @@ static const struct option options[] = {
649 "be more verbose (show counter open errors, etc)"), 653 "be more verbose (show counter open errors, etc)"),
650 OPT_BOOLEAN('s', "stat", &inherit_stat, 654 OPT_BOOLEAN('s', "stat", &inherit_stat,
651 "per thread counts"), 655 "per thread counts"),
656 OPT_BOOLEAN('d', "data", &sample_address,
657 "Sample addresses"),
652 OPT_BOOLEAN('n', "no-samples", &no_samples, 658 OPT_BOOLEAN('n', "no-samples", &no_samples,
653 "don't sample"), 659 "don't sample"),
654 OPT_END() 660 OPT_END()