diff options
-rw-r--r-- | tools/perf/util/callchain.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/perf/util/callchain.c b/tools/perf/util/callchain.c index 3dceabd9b5ef..3c4a91fea622 100644 --- a/tools/perf/util/callchain.c +++ b/tools/perf/util/callchain.c | |||
@@ -16,6 +16,9 @@ | |||
16 | 16 | ||
17 | #include "callchain.h" | 17 | #include "callchain.h" |
18 | 18 | ||
19 | #define chain_for_each_child(child, parent) \ | ||
20 | list_for_each_entry(child, &parent->children, brothers) | ||
21 | |||
19 | 22 | ||
20 | static void | 23 | static void |
21 | rb_insert_callchain(struct rb_root *root, struct callchain_node *chain) | 24 | rb_insert_callchain(struct rb_root *root, struct callchain_node *chain) |
@@ -46,7 +49,7 @@ void sort_chain_to_rbtree(struct rb_root *rb_root, struct callchain_node *node) | |||
46 | { | 49 | { |
47 | struct callchain_node *child; | 50 | struct callchain_node *child; |
48 | 51 | ||
49 | list_for_each_entry(child, &node->children, brothers) | 52 | chain_for_each_child(child, node) |
50 | sort_chain_to_rbtree(rb_root, child); | 53 | sort_chain_to_rbtree(rb_root, child); |
51 | 54 | ||
52 | if (node->hit) | 55 | if (node->hit) |
@@ -77,7 +80,7 @@ create_child(struct callchain_node *parent, bool inherit_children) | |||
77 | list_splice(&parent->children, &new->children); | 80 | list_splice(&parent->children, &new->children); |
78 | INIT_LIST_HEAD(&parent->children); | 81 | INIT_LIST_HEAD(&parent->children); |
79 | 82 | ||
80 | list_for_each_entry(next, &new->children, brothers) | 83 | chain_for_each_child(next, new) |
81 | next->parent = new; | 84 | next->parent = new; |
82 | } | 85 | } |
83 | list_add_tail(&new->brothers, &parent->children); | 86 | list_add_tail(&new->brothers, &parent->children); |
@@ -173,7 +176,7 @@ __append_chain_children(struct callchain_node *root, struct ip_callchain *chain, | |||
173 | struct callchain_node *rnode; | 176 | struct callchain_node *rnode; |
174 | 177 | ||
175 | /* lookup in childrens */ | 178 | /* lookup in childrens */ |
176 | list_for_each_entry(rnode, &root->children, brothers) { | 179 | chain_for_each_child(rnode, root) { |
177 | unsigned int ret = __append_chain(rnode, chain, start, syms); | 180 | unsigned int ret = __append_chain(rnode, chain, start, syms); |
178 | 181 | ||
179 | if (!ret) | 182 | if (!ret) |