1 #ifndef __PERF_CALLCHAIN_H
2 #define __PERF_CALLCHAIN_H
10 struct callchain_node
{
11 struct callchain_node
*parent
;
12 struct list_head brothers
;
13 struct list_head children
;
15 struct rb_node rb_node
;
20 struct callchain_list
{
23 struct list_head list
;
26 static inline void callchain_init(struct callchain_node
*node
)
28 INIT_LIST_HEAD(&node
->brothers
);
29 INIT_LIST_HEAD(&node
->children
);
30 INIT_LIST_HEAD(&node
->val
);
33 void append_chain(struct callchain_node
*root
, struct ip_callchain
*chain
,
34 struct symbol
**syms
);
35 void sort_chain_to_rbtree(struct rb_root
*rb_root
, struct callchain_node
*node
);