Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(255)

Issue 167893009: [Android] Add fast ELF Symbolizer to pylib. (Closed)

Created:
6 years, 10 months ago by Primiano Tucci (use gerrit)
Modified:
6 years, 10 months ago
CC:
chromium-reviews, Dai Mikurube (NOT FULLTIME)
Visibility:
Public.

Description

Add fast ELF Symbolizer to memory_inspector. This CL introduces a multiprocess, pipelined and asynchronous ELF symbolizer (based on addr2line) which gives honor to a bulkly workstation when symbolizing large batches of symbols. BUG=340294, 339059 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=252963

Patch Set 1 : #

Patch Set 2 : Performance tuning #

Total comments: 1

Patch Set 3 : Focusing only on the inner ELFSymbolizer #

Total comments: 20

Patch Set 4 : Move to pylib + pliard nits #

Total comments: 23

Patch Set 5 : bulach@ nits #

Total comments: 1

Patch Set 6 : more bulach@ nits #

Patch Set 7 : Remaining nits on mock_addr2line #

Patch Set 8 : Add inlines support + tests #

Unified diffs Side-by-side diffs Delta from patch set Stats (+653 lines, --2 lines) Patch
A build/android/pylib/symbols/PRESUBMIT.py View 1 2 3 1 chunk +21 lines, -0 lines 0 comments Download
A + build/android/pylib/symbols/__init__.py View 1 2 3 0 chunks +-1 lines, --1 lines 0 comments Download
A build/android/pylib/symbols/elf_symbolizer.py View 1 2 3 4 5 6 7 1 chunk +382 lines, -0 lines 0 comments Download
A build/android/pylib/symbols/elf_symbolizer_unittest.py View 1 2 3 4 5 6 7 1 chunk +173 lines, -0 lines 0 comments Download
A + build/android/pylib/symbols/mock_addr2line/__init__.py View 1 2 3 0 chunks +-1 lines, --1 lines 0 comments Download
A build/android/pylib/symbols/mock_addr2line/mock_addr2line View 1 2 3 4 5 6 7 1 chunk +79 lines, -0 lines 0 comments Download

Messages

Total messages: 30 (0 generated)
Primiano Tucci (use gerrit)
Because symbolization is never fast enough! ;-) https://codereview.chromium.org/167893009/diff/50001/tools/memory_inspector/memory_inspector/backends/android/android_backend_unittest.py File tools/memory_inspector/memory_inspector/backends/android/android_backend_unittest.py (left): https://codereview.chromium.org/167893009/diff/50001/tools/memory_inspector/memory_inspector/backends/android/android_backend_unittest.py#oldcode5 tools/memory_inspector/memory_inspector/backends/android/android_backend_unittest.py:5: """Unittests for ...
6 years, 10 months ago (2014-02-17 23:12:21 UTC) #1
Primiano Tucci (use gerrit)
Ah, +andrewhayden. IIRC you did something similar for the binary size tool (or maybe I'm ...
6 years, 10 months ago (2014-02-17 23:14:16 UTC) #2
Andrew Hayden (chromium.org)
Yeah, this is the review for the binary size tool: https://codereview.chromium.org/119083006/ What you have here ...
6 years, 10 months ago (2014-02-18 08:48:03 UTC) #3
Primiano Tucci (use gerrit)
On 2014/02/18 08:48:03, Andrew Hayden wrote: > Yeah, this is the review for the binary ...
6 years, 10 months ago (2014-02-18 09:14:49 UTC) #4
Primiano Tucci (use gerrit)
After some discussion with pliard@ (thanks very much Phelippe) I'm going some refactoring of this ...
6 years, 10 months ago (2014-02-18 10:45:34 UTC) #5
bulach
sorry, still fighting the other fires, but just in case: have you seen symbol.py, right? ...
6 years, 10 months ago (2014-02-18 13:59:48 UTC) #6
Primiano Tucci (use gerrit)
On 2014/02/18 13:59:48, bulach wrote: > sorry, still fighting the other fires, but just in ...
6 years, 10 months ago (2014-02-18 14:14:47 UTC) #7
bulach
On 2014/02/18 14:14:47, Primiano Tucci wrote: > On 2014/02/18 13:59:48, bulach wrote: > > sorry, ...
6 years, 10 months ago (2014-02-18 15:00:43 UTC) #8
Primiano Tucci (use gerrit)
So, just to keep things more clear, I splitted the two layers. This CL contains ...
6 years, 10 months ago (2014-02-18 15:48:57 UTC) #9
bulach
On 2014/02/18 15:48:57, Primiano Tucci wrote: > So, just to keep things more clear, I ...
6 years, 10 months ago (2014-02-18 16:05:53 UTC) #10
Primiano Tucci (use gerrit)
> It looks to me that we could: > 1) add a new public API ...
6 years, 10 months ago (2014-02-18 16:29:28 UTC) #11
bulach
On 2014/02/18 16:29:28, Primiano Tucci wrote: > > It looks to me that we could: ...
6 years, 10 months ago (2014-02-18 16:38:24 UTC) #12
Philippe
Thanks Primiano! This looks mostly good to me, I only have minor comments/naming suggestions. I ...
6 years, 10 months ago (2014-02-18 18:12:33 UTC) #13
Primiano Tucci (use gerrit)
> Yeah, due to some of these bizareness, third_party/android_platform is actually > importing build/android/pylib > ...
6 years, 10 months ago (2014-02-18 18:22:22 UTC) #14
Primiano Tucci (use gerrit)
>I wish we could use a single queue and have all the addr2line processes have ...
6 years, 10 months ago (2014-02-18 20:16:12 UTC) #15
Philippe
https://codereview.chromium.org/167893009/diff/190001/tools/memory_inspector/memory_inspector/backends/android/elf_symbolizer.py File tools/memory_inspector/memory_inspector/backends/android/elf_symbolizer.py (right): https://codereview.chromium.org/167893009/diff/190001/tools/memory_inspector/memory_inspector/backends/android/elf_symbolizer.py#newcode73 tools/memory_inspector/memory_inspector/backends/android/elf_symbolizer.py:73: max_parallelism=None, addr2line_timeout=30, max_backlog=50): On 2014/02/18 20:16:12, Primiano Tucci wrote: ...
6 years, 10 months ago (2014-02-19 09:25:59 UTC) #16
Primiano Tucci (use gerrit)
pliard@: I addressed the nits. bulach@: I moved to pylib and brought test coverage of ...
6 years, 10 months ago (2014-02-20 16:21:47 UTC) #17
bulach
cool stuff, thanks! just nits and small suggestions.. I need to look into the test ...
6 years, 10 months ago (2014-02-20 17:00:13 UTC) #18
bulach
lgtm, make sure phillipe is happy too! just some small comments... it'd be nice to ...
6 years, 10 months ago (2014-02-20 17:35:57 UTC) #19
Primiano Tucci (use gerrit)
https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py File build/android/pylib/symbols/elf_symbolizer.py (right): https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py#newcode193 build/android/pylib/symbols/elf_symbolizer.py:193: print >> self._proc.stdin, hex(addr) On 2014/02/20 17:00:13, bulach wrote: ...
6 years, 10 months ago (2014-02-20 18:06:57 UTC) #20
bulach
still lgtm, clarification: https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py File build/android/pylib/symbols/elf_symbolizer.py (right): https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py#newcode361 build/android/pylib/symbols/elf_symbolizer.py:361: except Exception: On 2014/02/20 18:06:57, Primiano ...
6 years, 10 months ago (2014-02-20 18:31:43 UTC) #21
Primiano Tucci (use gerrit)
https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py File build/android/pylib/symbols/elf_symbolizer.py (right): https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py#newcode361 build/android/pylib/symbols/elf_symbolizer.py:361: except Exception: On 2014/02/20 18:31:44, bulach wrote: > On ...
6 years, 10 months ago (2014-02-20 18:59:13 UTC) #22
pliard
On 2014/02/20 18:59:13, Primiano Tucci wrote: > https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py > File build/android/pylib/symbols/elf_symbolizer.py (right): > > https://codereview.chromium.org/167893009/diff/310001/build/android/pylib/symbols/elf_symbolizer.py#newcode361 ...
6 years, 10 months ago (2014-02-20 20:27:23 UTC) #23
Andrew Hayden (chromium.org)
Primiano, Can you please add BUG=339059? This is looking exciting. Can't wait to ditch the ...
6 years, 10 months ago (2014-02-21 08:19:17 UTC) #24
Primiano Tucci (use gerrit)
bulach@ I made some changes (Patchset 8) to support inlines, which was required to be ...
6 years, 10 months ago (2014-02-21 16:50:37 UTC) #25
bulach
lgtm, thanks a lot!
6 years, 10 months ago (2014-02-24 13:42:04 UTC) #26
Primiano Tucci (use gerrit)
The CQ bit was checked by primiano@chromium.org
6 years, 10 months ago (2014-02-24 13:53:24 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/primiano@chromium.org/167893009/2
6 years, 10 months ago (2014-02-24 13:54:23 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/primiano@chromium.org/167893009/2
6 years, 10 months ago (2014-02-24 14:19:19 UTC) #29
commit-bot: I haz the power
6 years, 10 months ago (2014-02-24 19:24:01 UTC) #30
Message was sent while issue was closed.
Change committed as 252963

Powered by Google App Engine
This is Rietveld 408576698