perf tools: Add 'trace_fields' dynamic sort key
The 'trace_fields' sort key is similar as 'trace' sort key, but it shows
each fields separately. Each event will get different columns as their
fields.
$ perf report -s trace_fields --stdio
# To display the perf.data header info, please use --header/--header-only options.
#
#
# Total Lost Samples: 0
#
# Samples: 20K of event 'kmem:kmalloc'
# Event count (approx.): 20533
#
# Overhead Command call_site ptr bytes_req bytes_alloc gfp_flags
# ........ ....... .................. .................. ......... ........... ...................
#
99.89% perf
ffffffffa01d4396 0xffff8803ffb79720 96 96 GFP_NOFS|GFP_ZERO
0.06% sleep
ffffffff8114e1cd 0xffff8803d228a000 4096 4096 GFP_KERNEL
0.03% perf
ffffffff811d6ae6 0xffff8803f7678f00 240 256 GFP_KERNEL|GFP_ZERO
0.00% perf
ffffffff812263c1 0xffff880406172380 128 128 GFP_KERNEL
0.00% perf
ffffffff812264b9 0xffff8803ffac1600 504 512 GFP_KERNEL
0.00% perf
ffffffff81226634 0xffff880401dc5280 28 32 GFP_KERNEL
0.00% sleep
ffffffff81226da9 0xffff8803ffac3a00 392 512 GFP_KERNEL
# Samples: 20K of event 'kmem:kfree'
# Event count (approx.): 20597
#
# Overhead call_site ptr
# ........ .................. ..................
#
99.58%
ffffffffa01d85ad 0xffff8803ffb79720
0.07%
ffffffff81443f5c 0xffff8803f7669400
0.02%
ffffffff811d5753 0xffff8803f7678f00
0.01%
ffffffff81443f5c 0xffff8803f766be00
0.01%
ffffffff8114e359 0xffff8803d228a000
0.01%
ffffffff81443f5c 0xffff8800d156dc00
0.01%
ffffffff81443f5c 0xffff8803f7669400
0.01%
ffffffff8114e359 0xffff8803d228a000
0.01%
ffffffff8114e359 0xffff8803d228a000
0.01%
ffffffff8114e359 0xffff8803d228a000
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1450804030-29193-13-git-send-email-namhyung@kernel.org
[ Combined with "perf tools: Fix segfault when using -s trace_fields" ]
Link: http://lkml.kernel.org/r/1451991518-25673-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>