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

Issue 2060663002: Server-side workaround to handle overlapping modules. (Closed)

Created:
4 years, 6 months ago by ivanpe
Modified:
4 years, 6 months ago
Reviewers:
Mark Mentovai
CC:
google-breakpad-dev_googlegroups.com, scottmg
Base URL:
https://chromium.googlesource.com/breakpad/breakpad.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Server-side workaround to handle overlapping modules. This change is resolving an issue that was caused by the combination of: - Android system libraries being relro packed in N+. - Breakpad dealing with relro packed libraries in a hack way. This is a fix for http://crbug/611824. I also found an use-after-free issue (bug in Minidump::SeekToStreamType). I disallowed the MinidumpStreamInfo copy and assign constructors and the compiler detected another similar issue in Minidump::Print. Then I disabled the copy and assign constructors for most classes in minidump.h (just in case). There are a couple of classes where I couldn't disallow them (since assign is used). This will require a small refactor so I left it out of this CL. R=mark@chromium.org Committed: https://chromium.googlesource.com/breakpad/breakpad/+/24f5931c5e0120982c0cbf1896641e3ef2bdd52f

Patch Set 1 #

Patch Set 2 : Fixing whitespace #

Total comments: 2

Patch Set 3 : Enabling module shrink only for Android minidumps and microdumps. #

Patch Set 4 : Fix whitespace. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+239 lines, -39 lines) Patch
M src/client/linux/minidump_writer/minidump_writer_unittest.cc View 1 2 2 chunks +2 lines, -0 lines 0 comments Download
M src/google_breakpad/processor/code_module.h View 1 chunk +8 lines, -1 line 0 comments Download
M src/google_breakpad/processor/code_modules.h View 1 2 2 chunks +13 lines, -0 lines 0 comments Download
M src/google_breakpad/processor/microdump.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M src/google_breakpad/processor/minidump.h View 1 2 3 16 chunks +45 lines, -1 line 0 comments Download
M src/google_breakpad/processor/process_state.h View 3 chunks +10 lines, -1 line 0 comments Download
M src/processor/basic_code_module.h View 1 3 chunks +20 lines, -13 lines 0 comments Download
M src/processor/basic_code_modules.h View 1 2 3 chunks +9 lines, -0 lines 0 comments Download
M src/processor/basic_code_modules.cc View 1 2 3 3 chunks +37 lines, -7 lines 0 comments Download
M src/processor/basic_source_line_resolver_unittest.cc View 1 chunk +3 lines, -1 line 0 comments Download
M src/processor/fast_source_line_resolver_unittest.cc View 1 chunk +3 lines, -1 line 0 comments Download
M src/processor/microdump.cc View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M src/processor/microdump_processor_unittest.cc View 3 chunks +4 lines, -4 lines 0 comments Download
M src/processor/minidump.cc View 1 2 7 chunks +41 lines, -4 lines 0 comments Download
M src/processor/minidump_processor.cc View 1 chunk +13 lines, -1 line 0 comments Download
M src/processor/range_map.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/processor/range_map-inl.h View 1 2 1 chunk +5 lines, -0 lines 0 comments Download
M src/processor/stackwalker_unittest_utils.h View 1 2 4 chunks +18 lines, -5 lines 0 comments Download

Messages

Total messages: 19 (4 generated)
ivanpe
4 years, 6 months ago (2016-06-11 01:48:34 UTC) #2
Mark Mentovai
https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc File src/processor/minidump.cc (right): https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc#newcode2510 src/processor/minidump.cc:2510: range_map_->SetEnableShrinkDown(true); I thought that we were only going to ...
4 years, 6 months ago (2016-06-13 14:38:10 UTC) #3
Torne
It seems like we should just call this load_bias, or similar, and not "shrunk_down_delta". This ...
4 years, 6 months ago (2016-06-13 16:07:07 UTC) #4
Mark Mentovai
How forward-looking. That sounds right to me.
4 years, 6 months ago (2016-06-13 16:23:26 UTC) #6
ivanpe
On 2016/06/13 16:07:07, Torne wrote: > It seems like we should just call this load_bias, ...
4 years, 6 months ago (2016-06-13 20:26:33 UTC) #7
ivanpe
https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc File src/processor/minidump.cc (right): https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc#newcode2510 src/processor/minidump.cc:2510: range_map_->SetEnableShrinkDown(true); On 2016/06/13 14:38:10, Mark Mentovai wrote: > I ...
4 years, 6 months ago (2016-06-13 21:36:00 UTC) #8
Mark Mentovai
I’d still prefer to only enable this for Android (and Android N, at that). We ...
4 years, 6 months ago (2016-06-14 16:57:46 UTC) #9
Mark Mentovai
https://crashpad.chromium.org/bug/117 for the weird module on Windows.
4 years, 6 months ago (2016-06-14 17:01:45 UTC) #10
Torne
On 2016/06/13 20:26:33, ivanpe wrote: > On 2016/06/13 16:07:07, Torne wrote: > > It seems ...
4 years, 6 months ago (2016-06-15 16:51:52 UTC) #11
ivanpe
On 2016/06/15 16:51:52, Torne wrote: > On 2016/06/13 20:26:33, ivanpe wrote: > > On 2016/06/13 ...
4 years, 6 months ago (2016-06-15 17:41:14 UTC) #12
ivanpe
On 2016/06/13 14:38:10, Mark Mentovai wrote: > https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc > File src/processor/minidump.cc (right): > > https://codereview.chromium.org/2060663002/diff/20001/src/processor/minidump.cc#newcode2510 ...
4 years, 6 months ago (2016-06-20 06:16:15 UTC) #13
ivanpe
On 2016/06/14 16:57:46, Mark Mentovai wrote: > I’d still prefer to only enable this for ...
4 years, 6 months ago (2016-06-20 06:18:21 UTC) #14
ivanpe
Mark, PTAL.
4 years, 6 months ago (2016-06-20 06:18:47 UTC) #15
Mark Mentovai
LGTM
4 years, 6 months ago (2016-06-20 13:45:24 UTC) #17
ivanpe
4 years, 6 months ago (2016-06-20 18:14:52 UTC) #19
Message was sent while issue was closed.
Committed patchset #4 (id:60001) manually as
24f5931c5e0120982c0cbf1896641e3ef2bdd52f (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698