From: Adrian Hunter <adrian.hunter@intel.com>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>, linux-kernel@vger.kernel.org
Subject: [PATCH 4/6] perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result
Date: Mon, 29 Jun 2020 12:19:53 +0300 [thread overview]
Message-ID: <20200629091955.17090-5-adrian.hunter@intel.com> (raw)
In-Reply-To: <20200629091955.17090-1-adrian.hunter@intel.com>
Using ctrl-F ('Find') would not find 'unknown' because it matches id zero.
Fix by excluding id zero from selection.
Example:
$ perf record -e intel_pt//u uname
Linux
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.034 MB perf.data ]
$ perf script --itrace=bep -s ~/libexec/perf-core/scripts/python/export-to-sqlite.py perf.data.db branches calls
2020-06-26 15:32:14.928997 Creating database ...
2020-06-26 15:32:14.933971 Writing records...
2020-06-26 15:32:15.535251 Adding indexes
2020-06-26 15:32:15.542993 Dropping unused tables
2020-06-26 15:32:15.549716 Done
$ python3 ~/libexec/perf-core/scripts/python/exported-sql-viewer.py perf.data.db
Select: Reports -> Context-Sensitive Call Graph
Press: Ctrl-F
Enter: unknown
Press: Enter
Before: gets stuck
After: tree is expanded to line showing 'unknown'
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: 254c0d820b86d ("perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase")
Cc: stable@vger.kernel.org
---
tools/perf/scripts/python/exported-sql-viewer.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/perf/scripts/python/exported-sql-viewer.py b/tools/perf/scripts/python/exported-sql-viewer.py
index 4be7cb68c8bb..e0c90aeff15e 100755
--- a/tools/perf/scripts/python/exported-sql-viewer.py
+++ b/tools/perf/scripts/python/exported-sql-viewer.py
@@ -768,7 +768,8 @@ class CallGraphModel(CallGraphModelBase):
" FROM calls"
" INNER JOIN call_paths ON calls.call_path_id = call_paths.id"
" INNER JOIN symbols ON call_paths.symbol_id = symbols.id"
- " WHERE symbols.name" + match +
+ " WHERE calls.id <> 0"
+ " AND symbols.name" + match +
" GROUP BY comm_id, thread_id, call_path_id"
" ORDER BY comm_id, thread_id, call_path_id")
--
2.17.1
next prev parent reply other threads:[~2020-06-29 19:07 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-29 9:19 [PATCH 0/6] perf tools: Some Intel PT related fixes for v5.8 Adrian Hunter
2020-06-29 9:19 ` [PATCH 1/6] perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument Adrian Hunter
2020-06-29 9:19 ` [PATCH 2/6] perf record: Fix duplicated sideband events with Intel PT system wide tracing Adrian Hunter
2020-06-29 9:19 ` [PATCH 3/6] perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result Adrian Hunter
2020-06-29 9:19 ` Adrian Hunter [this message]
2020-06-29 9:19 ` [PATCH 5/6] perf scripts python: exported-sql-viewer.py: Fix zero id in call tree " Adrian Hunter
2020-06-29 9:19 ` [PATCH 6/6] perf scripts python: exported-sql-viewer.py: Fix time chart call tree Adrian Hunter
2020-07-03 11:20 ` [PATCH 0/6] perf tools: Some Intel PT related fixes for v5.8 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=20200629091955.17090-5-adrian.hunter@intel.com \
--to=adrian.hunter@intel.com \
--cc=acme@kernel.org \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.