RFC: callchain showing same entry as hist_entry

From: Arnaldo Carvalho de Melo
Date: Tue Aug 16 2016 - 10:37:35 EST


Hi Namhyung, Jiri,

please take a look at the patch below, and Ack if possible, it
is a problem introduced in:

cfaa154b2335 ("perf tools: Get rid of obsolete hist_entry__sort_list")

That is not equivalent to the code that was there and results in having
the same entry as the first entry for the callchain as in the
hist_entry, which is annoying and doesn't match the original intent of
that 'continue' branch, as described in the comment right above it.

Now looking at doing the same for the TUI...

- Arnaldo

diff --git a/tools/perf/ui/stdio/hist.c b/tools/perf/ui/stdio/hist.c
index 9b65f4a6b35a..46a083e59ce9 100644
--- a/tools/perf/ui/stdio/hist.c
+++ b/tools/perf/ui/stdio/hist.c
@@ -207,7 +207,7 @@ static size_t callchain__fprintf_graph(FILE *fp, struct rb_root *root,
* displayed twice.
*/
if (!i++ && field_order == NULL &&
- sort_order && !prefixcmp(sort_order, "sym"))
+ (sort_order == NULL || !prefixcmp(sort_order, "sym")))
continue;
if (!printed) {
ret += callchain__fprintf_left_margin(fp, left_margin);