lkml.org 
[lkml]   [2016]   [Sep]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/7] perf hists browser: Fix event group display
    Em Mon, Sep 12, 2016 at 03:19:52PM +0900, Namhyung Kim escreveu:
    > Milian reported that the event group on TUI shows duplicated overhead.
    > This was due to a bug on calculating hpp->buf position. The
    > hpp_advance() was called from __hpp__slsmg_color_printf() on TUI but
    > it's already called from the hpp__call_print_fn macro in __hpp__fmt().
    > The end result is that the print function returns number of bytes it
    > printed but the buffer advanced twice of the length.
    >
    > This is generally not a problem since it doesn't need to access the
    > buffer again. But with event group, overhead needs to be printed
    > multiple times and hist_entry__snprintf_alignment() tries to fill the
    > space with buffer after it printed. So it (brokenly) showed the last
    > overhead again.
    >
    > The bug was there from the beginning, but I think it's only revealed
    > when the alignment function was added.

    Thanks, applied.

    Milian, if you could, please test this, I would then change the line
    below to Reported-and-Tested-by: you, if I get it before my next pull
    req to Ingo.

    - Arnaldo

    > Reported-by: Milian Wolff <milian.wolff@kdab.com>
    > Fixes: 89fee7094323 ("perf hists: Do column alignment on the format iterator")
    > Signed-off-by: Namhyung Kim <namhyung@kernel.org>
    > ---
    > tools/perf/ui/browsers/hists.c | 1 -
    > 1 file changed, 1 deletion(-)
    >
    > diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
    > index f0611c937d4b..35e44b1879e3 100644
    > --- a/tools/perf/ui/browsers/hists.c
    > +++ b/tools/perf/ui/browsers/hists.c
    > @@ -1097,7 +1097,6 @@ static int __hpp__slsmg_color_printf(struct perf_hpp *hpp, const char *fmt, ...)
    > ret = scnprintf(hpp->buf, hpp->size, fmt, len, percent);
    > ui_browser__printf(arg->b, "%s", hpp->buf);
    >
    > - advance_hpp(hpp, ret);
    > return ret;
    > }
    >
    > --
    > 2.9.3

    \
     
     \ /
      Last update: 2016-09-17 09:59    [W:4.458 / U:0.536 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site