Messages in this thread | | | Date | Wed, 1 Oct 2014 14:08:29 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH 01/11] perf stat: Fix AGGR_CORE segfault on multi-socket system |
| |
Em Wed, Oct 01, 2014 at 03:36:22PM +0100, Matt Fleming escreveu: > From: Matt Fleming <matt.fleming@intel.com> > > When printing the stats associated with a counter in AGGR_MODE mode, the > 'cpu' argument represents an encoded socket and core_id, not a 'cpu'. > Using it as an index into the any of the *_stats[MAX_NR_CPUS] arrays > generates a SIGSEGV if the encoded socket id is non-zero. > > Follow the AGGR_GLOBAL case and reset the cpu index to 0.
So, is this still needed after applying Andi's patch:
perf stat: Fix --per-core on multi socket systems
https://git.kernel.org/cgit/linux/kernel/git/acme/linux.git/commit/?h=perf/core&id=da88c7f78d842a6938d9adde6af87a2ce262051d
Or should this be applied on top of that one, after fixing up the conflicts?
- Arnaldo
> Cc: Jiri Olsa <jolsa@redhat.com> > Cc: Arnaldo Carvalho de Melo <acme@redhat.com> > Cc: Peter Zijlstra <peterz@infradead.org> > Signed-off-by: Matt Fleming <matt.fleming@intel.com> > --- > tools/perf/builtin-stat.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c > index b22c62f80078..53bd6b729498 100644 > --- a/tools/perf/builtin-stat.c > +++ b/tools/perf/builtin-stat.c > @@ -965,7 +965,7 @@ static void abs_printout(int id, int nr, struct perf_evsel *evsel, double avg) > > aggr_printout(evsel, id, nr); > > - if (aggr_mode == AGGR_GLOBAL) > + if (aggr_mode == AGGR_GLOBAL || aggr_mode == AGGR_CORE) > cpu = 0; > > fprintf(output, fmt, avg, csv_sep); > -- > 1.9.3
| |