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

Issue 535943002: Alter how relocation packing cuts holes from libchrome.so. (Closed)

Created:
6 years, 3 months ago by simonb (inactive)
Modified:
6 years, 3 months ago
Reviewers:
Anton, Sami
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Alter how relocation packing cuts holes from libchrome.so. The current ELF file rewrite alters both offsets and addresses. Altering addresses affects debugging tools such as breakpad. This change leaves addresses unchanged, and instead splits a single LOAD segment into two, leaving a mapping hole at the point where the hole was created in the ELF file. It works by repurposing the PT_GNU_STACK segment, unused on Android. The split into two LOAD segments no longer requires relocation packing to adjust relocations or the symbol table, and in particular means the the call frame information extracted by Dwarf DIE data extractors for breakpad from an unstripped (and not packed) library will match the stripped and packed one. BUG=385553, 394703 Committed: https://crrev.com/1ce088922527f3ddfeb5618b871e05473de53c02 Cr-Commit-Position: refs/heads/master@{#294413}

Patch Set 1 #

Total comments: 6

Patch Set 2 : Update for review feedback #

Patch Set 3 : Fix comment typo #

Unified diffs Side-by-side diffs Delta from patch set Stats (+485 lines, -395 lines) Patch
M tools/relocation_packer/src/elf_file.cc View 1 2 18 chunks +483 lines, -395 lines 0 comments Download
M tools/relocation_packer/src/elf_traits.h View 2 chunks +2 lines, -0 lines 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs_arm32_packed.so View Binary file 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs_arm64_packed.so View Binary file 0 comments Download

Messages

Total messages: 20 (7 generated)
simonb (inactive)
6 years, 3 months ago (2014-09-03 14:57:49 UTC) #2
Anton
https://codereview.chromium.org/535943002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/535943002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode20 tools/relocation_packer/src/elf_file.cc:20: The comment for SplitProgramHeadersForHole is pretty useful, but it ...
6 years, 3 months ago (2014-09-03 16:57:20 UTC) #3
simonb (inactive)
Thanks. Updated in patch set 2. https://codereview.chromium.org/535943002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/535943002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode20 tools/relocation_packer/src/elf_file.cc:20: On 2014/09/03 16:57:20, ...
6 years, 3 months ago (2014-09-03 17:52:22 UTC) #4
Anton
lgtm
6 years, 3 months ago (2014-09-04 10:51:53 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/535943002/40001
6 years, 3 months ago (2014-09-04 13:36:54 UTC) #7
commit-bot: I haz the power
No LGTM from a valid reviewer yet. Only full committers are accepted. Even if an ...
6 years, 3 months ago (2014-09-04 13:36:56 UTC) #9
simonb (inactive)
+Sami, for committer lgtm. Thanks.
6 years, 3 months ago (2014-09-04 14:48:26 UTC) #11
Sami
My eyes are indeed bleeding but lgtm.
6 years, 3 months ago (2014-09-04 14:55:37 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/535943002/40001
6 years, 3 months ago (2014-09-04 15:04:46 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu_triggered_tests on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu_triggered_tests/builds/53526)
6 years, 3 months ago (2014-09-04 15:59:03 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patchset/535943002/40001
6 years, 3 months ago (2014-09-11 16:51:38 UTC) #18
commit-bot: I haz the power
Committed patchset #3 (id:40001) as 5112bfceccae1919568bceec245f98b8031f10a2
6 years, 3 months ago (2014-09-11 17:29:46 UTC) #19
commit-bot: I haz the power
6 years, 3 months ago (2014-09-11 18:42:48 UTC) #20
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/1ce088922527f3ddfeb5618b871e05473de53c02
Cr-Commit-Position: refs/heads/master@{#294413}

Powered by Google App Engine
This is Rietveld 408576698