• Frederic Weisbecker's avatar
    perf: Sync callchains with period based hits · 108553e1
    Frederic Weisbecker authored
    Hists have their hits increased by the event period. And this
    period based counting is the foundation of all the stats in
    perf report.
    
    But callchains still use the raw number of hits, without taking
    the period into account. So when we compute the percentage,
    absolute based percentages are totally broken, and relative ones
    too in the first parent level. Because we pass the number of events
    muliplied by their period as the total number of hits to the
    callchain filtering, while callchains expect this number to be
    the number of raw hits.
    
    perf report -g graph was simply not working, showing no graph unless
    the min percent was zero. And even there the percentage of the
    branches was always 0. And may be fractal filtering was broken on
    the first branch level too.
    
    flat also was broken, but it was hidden because of other breakages.
    
    Anyway fix this by counting using periods on callchains.
    Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Paul Mackerras <paulus@samba.org>
    108553e1
builtin-report.c 14.1 KB