public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Anton Blanchard <anton@samba.org>
To: unlisted-recipients:; (no To-header on input)
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>,
	Ingo Molnar <mingo@kernel.org>,
	linux-kernel@vger.kernel.org,
	Adrian Hunter <adrian.hunter@intel.com>,
	David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Jiri Olsa <jolsa@redhat.com>, Mike Galbraith <efault@gmx.de>,
	Namhyung Kim <namhyung@kernel.org>,
	Paul Mackerras <paulus@samba.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Stephane Eranian <eranian@google.com>,
	Michael Ellerman <michaele@au1.ibm.com>
Subject: Re: [PATCH 06/35] perf hists: Leave symbol addr hist bucket auto alloc to symbol layer
Date: Thu, 13 Feb 2014 04:09:13 +1100	[thread overview]
Message-ID: <20140213040913.1c59cc45@kryten> (raw)
In-Reply-To: <20140213015017.12393bd4@kryten>


Hi,

> > Can you try the following patch?
> > 
> > It should fix another problem, i.e. we were allocating, but
> > annotation would fail in the !TUI case, as it would return at
> > symbol__inc_addr_samples when use_browser != 1, now it will allocate
> > and mark the right bucket.
> > 
> > I'll have this in perf/urgent and will do the optimization of not
> > allocating those buckets in the report case when not doing
> > integrated annotation, i.e. report --stdio doesn't provide a way to
> > go to the annotation --stdio, so no point on allocating the
> > buckets. Just on 'annotate --stdio' we should allocate it, etc.
> 
> This fixes the issue, thanks!

After some more testing, perf report can SEGV with this patch:

Program received signal SIGSEGV, Segmentation fault.
__symbol__inc_addr_samples (addr=569128, evidx=0, notes=0x1023af80, map=0x10191ef0, sym=0x1023afb0) at util/annotate.c:477
477     util/annotate.c: No such file or directory.
(gdb) backtrace 
#0  __symbol__inc_addr_samples (addr=569128, evidx=0, notes=0x1023af80, map=0x10191ef0, sym=0x1023afb0) at util/annotate.c:477
#1  symbol__inc_addr_samples (addr=<optimised out>, evidx=<optimised out>, map=0x10191ef0, sym=0x1023afb0) at util/annotate.c:501
#2  hist_entry__inc_addr_samples (he=<optimised out>, evidx=<optimised out>, ip=569128) at util/annotate.c:511
#3  0x00000000100183b8 in report__add_hist_entry (sample=0x3fffffffd970, al=0x3fffffffd770, evsel=0x10190f10, tool=<optimised out>) at builtin-report.c:208
#4  process_sample_event (tool=<optimised out>, event=<optimised out>, sample=0x3fffffffd970, evsel=0x10190f10, machine=<optimised out>) at builtin-report.c:250
#5  0x000000001007eac8 in perf_session_deliver_event (session=0x10190330, event=<optimised out>, sample=<optimised out>, tool=<optimised out>, 
    file_offset=<optimised out>) at util/session.c:985
#6  0x000000001007f40c in flush_sample_queue (s=0x10190330, tool=0x3fffffffdf90) at util/session.c:505
#7  0x0000000010081064 in __perf_session__process_events (session=0x10190330, data_offset=<optimised out>, data_size=<optimised out>, file_size=331392, 
    tool=0x3fffffffdf90) at util/session.c:1355

(gdb) print notes->src
$3 = (struct annotated_source *) 0x51

Anton

  reply	other threads:[~2014-02-12 17:09 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-20 19:08 [GIT PULL 00/35] perf/core improvements and fixes Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 01/35] perf sort: Compare addresses if no symbol info Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 02/35] perf sort: Do not compare dso again Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 03/35] perf hists: Do not pass period and weight to add_hist_entry() Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 04/35] tools lib traceevent: Introduce pevent_filter_strerror() Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 05/35] perf annotate: Auto allocate symbol per addr hist buckets Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 06/35] perf hists: Leave symbol addr hist bucket auto alloc to symbol layer Arnaldo Carvalho de Melo
2014-02-12  7:23   ` Anton Blanchard
2014-02-12 14:18     ` Arnaldo Carvalho de Melo
2014-02-12 14:50       ` Anton Blanchard
2014-02-12 17:09         ` Anton Blanchard [this message]
2014-02-13  8:19           ` Namhyung Kim
2013-12-20 19:08 ` [PATCH 07/35] perf annotate: Add inc_samples method to addr_map_symbol Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 08/35] perf top: Use hist_entry__inc_addr_sample Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 09/35] perf annotate: Adopt methods from hists Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 10/35] perf annotate: Make symbol__inc_addr_samples private Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 11/35] perf report: Introduce helpers for processing callchains Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 12/35] perf tools: Get rid of a duplicate va_end() in error reporting routine Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 13/35] perf inject: Handle output file via perf_data_file object Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 14/35] perf record: Use perf_data_file__write for output file Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 15/35] perf record: Simplify perf_record__write Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 16/35] perf record: Rename 'perf_record' to plain 'record' Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 17/35] perf tools: Rename 'perf_record_opts' to 'record_opts Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 18/35] perf tests: Factor make install tests Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 19/35] perf tools: Making QUIET_(CLEAN|INSTAL) variables global Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 20/35] tools lib traceevent: Remove print_app_build variable Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 21/35] tools lib traceevent: Use global QUIET_CC build output Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 22/35] tools lib traceevent: Add global QUIET_CC_FPIC " Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 23/35] tools lib traceevent: Use global QUIET_LINK " Arnaldo Carvalho de Melo
2013-12-20 19:08 ` [PATCH 24/35] tools lib traceevent: Use global QUIET_INSTALL " Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 25/35] tools lib traceevent: Use global QUIET_CLEAN " Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 26/35] tools lib traceevent: Use global 'O' processing code Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 27/35] perf report: Rename 'perf_report' to 'report' Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 28/35] perf ui browser: Remove misplaced __maybe_unused Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 29/35] perf scripting python: Shorten function signatures Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 30/35] perf scripting perl: " Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 31/35] perf mem: Remove unused parameter from dump_raw_samples() Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 32/35] perf symbols: Add 'machine' member to struct addr_location Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 33/35] perf report: Use pr_*() functions where applicable Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 34/35] perf report: Print session information only if --stdio is given Arnaldo Carvalho de Melo
2013-12-20 19:09 ` [PATCH 35/35] perf stat: Do not show stats if workload fails Arnaldo Carvalho de Melo
2013-12-27 20:05 ` [GIT PULL 00/35] perf/core improvements and fixes Arnaldo Carvalho de Melo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140213040913.1c59cc45@kryten \
    --to=anton@samba.org \
    --cc=acme@infradead.org \
    --cc=adrian.hunter@intel.com \
    --cc=dsahern@gmail.com \
    --cc=efault@gmx.de \
    --cc=eranian@google.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michaele@au1.ibm.com \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox