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

From: Stephane Eranian
Date: Fri Jul 13 2018 - 02:18:24 EST


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>

> > 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
> > >