Re: [PATCH] perf tools: Synthesize GROUP_DESC feature in pipe mode

From: Stephane Eranian
Date: Thu Jul 19 2018 - 11:17:19 EST


Hi Arnaldo,
On Thu, Jul 19, 2018 at 7:29 AM Arnaldo Carvalho de Melo
<acme@xxxxxxxxxx> wrote:
>
> Em Thu, Jul 12, 2018 at 11:18:05PM -0700, Stephane Eranian escreveu:
> > Hi Jiri,
> > On Thu, Jul 12, 2018 at 9:49 AM Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> > >
> > > On Thu, Jul 12, 2018 at 09:34:45AM -0700, Stephane Eranian wrote:
> > > > Hi Jiri,
> > > > On Thu, Jul 12, 2018 at 6:52 AM Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> > > > >
> > > > > Stephan reported, that pipe mode does not carry the group
> > > > > information and thus the piped report won't display the
> > > > > grouped output for following command:
> > > > >
> > > > Thanks for fixing this quickly.
> > >
> > > could I have your tested/acked by?
>
> > Acked-by: Stephane Eranian <eranian@xxxxxxxxxx>
>
> Applying, Stephane, please consider providing a
>
Sorry about that.

Tested-by: Stephane Eranian <eranian@xxxxxxxxxx>

>
> When you actually applied the patch, built and tested, so that we can
> have this reflect better what actually was done.
>
> Acked-by is more like hey, I briefly looked at the patch, looks good.
> I.e. no actual test was performed, which I think wasn't the case here,
> but will keep what you provided (Acked-by) as I'm not sure you actually
> tested.
>
> Thanks,
>
> - Arnaldo
>
> > > > I think we should have more testing on the pipe mode, in general.
> > >
> > > yea, we should
> > >
> > > jirka
> > >
> > > >
> > > > > # perf record -e '{cycles,instructions,branches}' -a sleep 4 | perf report
> > > > >
> > > > > It has no idea about the group setup, so it will display
> > > > > events separately:
> > > > >
> > > > > # Overhead Command Shared Object ...
> > > > > # ........ ............... .......................
> > > > > #
> > > > > 6.71% swapper [kernel.kallsyms]
> > > > > 2.28% offlineimap libpython2.7.so.1.0
> > > > > 0.78% perf [kernel.kallsyms]
> > > > > ...
> > > > >
> > > > > Fixing GROUP_DESC feature record to be synthesized in pipe mode,
> > > > > so the report output is grouped if there's group defined in record:
> > > > >
> > > > > # Overhead Command Shared ...
> > > > > # ........................ ............... .......
> > > > > #
> > > > > 7.57% 0.16% 0.30% swapper [kernel
> > > > > 1.87% 3.15% 2.46% offlineimap libpyth
> > > > > 1.33% 0.00% 0.00% perf [kernel
> > > > > ...
> > > > >
> > > > > Cc: David Carrillo-Cisneros <davidcc@xxxxxxxxxx>
> > > > > Reported-by: Stephane Eranian <eranian@xxxxxxxxxx>
> > > > > Link: http://lkml.kernel.org/n/tip-ybqyh8ac4g173iy3xt4pxnlo@xxxxxxxxxxxxxx
> > > > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > > > > ---
> > > > > tools/perf/util/header.c | 2 +-
> > > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
> > > > > index 59fcc790c865..af9aaf28f976 100644
> > > > > --- a/tools/perf/util/header.c
> > > > > +++ b/tools/perf/util/header.c
> > > > > @@ -2587,7 +2587,7 @@ static const struct feature_ops feat_ops[HEADER_LAST_FEATURE] = {
> > > > > FEAT_OPR(NUMA_TOPOLOGY, numa_topology, true),
> > > > > FEAT_OPN(BRANCH_STACK, branch_stack, false),
> > > > > FEAT_OPR(PMU_MAPPINGS, pmu_mappings, false),
> > > > > - FEAT_OPN(GROUP_DESC, group_desc, false),
> > > > > + FEAT_OPR(GROUP_DESC, group_desc, false),
> > > > > FEAT_OPN(AUXTRACE, auxtrace, false),
> > > > > FEAT_OPN(STAT, stat, false),
> > > > > FEAT_OPN(CACHE, cache, true),
> > > > > --
> > > > > 2.17.1
> > > > >