History

perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result

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 -> Call Tree Press: Ctrl-F Enter: unknown Press: Enter Before: displays 'unknown' not found After: tree is expanded to line showing 'unknown'

Adrian Hunter committed 6 years ago

Commit 031c8d51 parent 7ff520b1 file · +2 −1Browse files

Showing the changes to tools/perf/scripts/python (1 of 1 file). Show all

Unified · Split

tools/perf/scripts/python/exported-sql-viewer.py+2−1
@@ -964,7 +964,8 @@ class CallTreeModel(CallGraphModelBase): · 963 unmodified lines
964964 " FROM calls"
965965 " INNER JOIN call_paths ON calls.call_path_id = call_paths.id"
966966 " INNER JOIN symbols ON call_paths.symbol_id = symbols.id"
967− " WHERE symbols.name" + match +
967+ " WHERE calls.id <> 0"
968+ " AND symbols.name" + match +
968969 " ORDER BY comm_id, thread_id, call_time, calls.id")
969970
970971 def FindPath(self, query):