Re: [RFC 0/3] perf tools: Make perf_hpp__init respect output dimensions

From: Namhyung Kim
Date: Tue Oct 06 2015 - 10:04:53 EST


On Tue, Oct 6, 2015 at 9:25 PM, Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> hi,
> The perf_hpp__init currently does not respect sorting dimensions
> and the setup_sorting function could endup queueing same format
> twice. That screwed up the perf_hpp__list and got stuck in loop
> within perf_hpp__setup_output_field function.
>
> $ perf report -F +overhead
>
> 0x00000000004c1355 in perf_hpp__is_sort_entry (format=format@entry=0x880440 <perf_hpp.format>) at util/sort.c:1506
> 1506 {
>
> #0 0x00000000004c1355 in perf_hpp__is_sort_entry (format=format@entry=0x880440 <perf_hpp.format>) at util/sort.c:1506
> #1 0x00000000004c139d in perf_hpp__same_sort_entry (a=a@entry=0x880440 <perf_hpp.format>, b=b@entry=0x2bb2fe0) at util/sort.c:1380
> #2 0x00000000004f8d3c in perf_hpp__setup_output_field () at ui/hist.c:554
> #3 0x00000000004c1d1e in setup_sorting () at util/sort.c:1984
> #4 0x000000000042efbf in cmd_report (argc=0, argv=0x7ffea5a0e790, prefix=<optimized out>) at builtin-report.c:874
> #5 0x0000000000476f13 in run_builtin (p=p@entry=0x875628 <commands+168>, argc=argc@entry=3, argv=argv@entry=0x7ffea5a0e790) at perf.c:385
> #6 0x000000000047710b in handle_internal_command (argc=3, argv=0x7ffea5a0e790) at perf.c:445
> #7 0x0000000000477176 in run_argv (argcp=argcp@entry=0x7ffea5a0e5fc, argv=argv@entry=0x7ffea5a0e5f0) at perf.c:489
> #8 0x00000000004773e7 in main (argc=3, argv=0x7ffea5a0e790) at perf.c:606
>
> Using hpp_dimension__add_output function to register
> the output column. It will also mark the dimension
> as taken and omit above stuck.
>
> It might need some other changes.. not sure, Namhyung? ;-)

Nope. It looks good to me as is. :) It should work once it sets up
the output field and sort list properly, so

Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>

Thanks,
Namhyung



>
> Available in:
> git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
> perf/cols
>
> thanks,
> jirka
>
>
> ---
> Jiri Olsa (3):
> perf tools: Get rid of superfluos call to reset_dimensions
> perf tools: Introduce hpp_dimension__add_output function
> perf tools: Use hpp_dimension__add_output to register hpp columns
>
> tools/perf/ui/hist.c | 16 ++++++++--------
> tools/perf/util/sort.c | 8 ++++++--
> tools/perf/util/sort.h | 2 ++
> 3 files changed, 16 insertions(+), 10 deletions(-)



--
Thanks,
Namhyung
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/