diff options
author | Jiri Olsa <jolsa@kernel.org> | 2016-07-04 08:16:21 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2016-07-04 18:39:01 -0400 |
commit | 347ca878062d5fb0e16db1fae81b0994f2457efd (patch) | |
tree | 0d0b45bfe2a2d7a36abab75a37d6ada566a1138a | |
parent | c60da22aca8755b77b7f4d4caf57ada8654db939 (diff) |
perf tests: Fix hist accumulation test
User's values from .perfconfig could overload the default callchain
setup and cause this test to fail. Making sure the test is using
default callchain_param values.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1467634583-29147-3-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/tests/hists_cumulate.c | 4 | ||||
-rw-r--r-- | tools/perf/util/callchain.h | 1 | ||||
-rw-r--r-- | tools/perf/util/util.c | 19 |
3 files changed, 18 insertions, 6 deletions
diff --git a/tools/perf/tests/hists_cumulate.c b/tools/perf/tests/hists_cumulate.c index a9e3db3afac4..9fd54b79a788 100644 --- a/tools/perf/tests/hists_cumulate.c +++ b/tools/perf/tests/hists_cumulate.c | |||
@@ -216,6 +216,8 @@ static int do_test(struct hists *hists, struct result *expected, size_t nr_expec | |||
216 | 216 | ||
217 | /* check callchain entries */ | 217 | /* check callchain entries */ |
218 | root = &he->callchain->node.rb_root; | 218 | root = &he->callchain->node.rb_root; |
219 | |||
220 | TEST_ASSERT_VAL("callchains expected", !RB_EMPTY_ROOT(root)); | ||
219 | cnode = rb_entry(rb_first(root), struct callchain_node, rb_node); | 221 | cnode = rb_entry(rb_first(root), struct callchain_node, rb_node); |
220 | 222 | ||
221 | c = 0; | 223 | c = 0; |
@@ -666,6 +668,8 @@ static int test4(struct perf_evsel *evsel, struct machine *machine) | |||
666 | perf_evsel__set_sample_bit(evsel, CALLCHAIN); | 668 | perf_evsel__set_sample_bit(evsel, CALLCHAIN); |
667 | 669 | ||
668 | setup_sorting(NULL); | 670 | setup_sorting(NULL); |
671 | |||
672 | callchain_param = callchain_param_default; | ||
669 | callchain_register_param(&callchain_param); | 673 | callchain_register_param(&callchain_param); |
670 | 674 | ||
671 | err = add_hist_entries(hists, machine); | 675 | err = add_hist_entries(hists, machine); |
diff --git a/tools/perf/util/callchain.h b/tools/perf/util/callchain.h index a70f6b54eb92..13e75549c440 100644 --- a/tools/perf/util/callchain.h +++ b/tools/perf/util/callchain.h | |||
@@ -106,6 +106,7 @@ struct callchain_param { | |||
106 | }; | 106 | }; |
107 | 107 | ||
108 | extern struct callchain_param callchain_param; | 108 | extern struct callchain_param callchain_param; |
109 | extern struct callchain_param callchain_param_default; | ||
109 | 110 | ||
110 | struct callchain_list { | 111 | struct callchain_list { |
111 | u64 ip; | 112 | u64 ip; |
diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c index e08b9a092a23..5f44a21955cd 100644 --- a/tools/perf/util/util.c +++ b/tools/perf/util/util.c | |||
@@ -19,12 +19,19 @@ | |||
19 | #include "callchain.h" | 19 | #include "callchain.h" |
20 | #include "strlist.h" | 20 | #include "strlist.h" |
21 | 21 | ||
22 | struct callchain_param callchain_param = { | 22 | #define CALLCHAIN_PARAM_DEFAULT \ |
23 | .mode = CHAIN_GRAPH_ABS, | 23 | .mode = CHAIN_GRAPH_ABS, \ |
24 | .min_percent = 0.5, | 24 | .min_percent = 0.5, \ |
25 | .order = ORDER_CALLEE, | 25 | .order = ORDER_CALLEE, \ |
26 | .key = CCKEY_FUNCTION, | 26 | .key = CCKEY_FUNCTION, \ |
27 | .value = CCVAL_PERCENT, | 27 | .value = CCVAL_PERCENT, \ |
28 | |||
29 | struct callchain_param callchain_param = { | ||
30 | CALLCHAIN_PARAM_DEFAULT | ||
31 | }; | ||
32 | |||
33 | struct callchain_param callchain_param_default = { | ||
34 | CALLCHAIN_PARAM_DEFAULT | ||
28 | }; | 35 | }; |
29 | 36 | ||
30 | /* | 37 | /* |