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

Issue 11189068: Changing minidump process generation to be in-process on Android. (Closed)

Created:
8 years, 2 months ago by Jay Civelli
Modified:
4 years, 2 months ago
Reviewers:
Lei Zhang, jam
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam
Visibility:
Public.

Description

Because of UID isolation on Android, crash dump generation has to happen in-process for renderers as well (as the browser cannot access all the necessary states of the renderer process). Breakpad has support for generating minidumps to a passed FD (as the renderer process on Android does not have permission to create file), so the flow on Android is: - when a render process is created the browser creates a file and passes its FD to the process - the renderer process initializes Breakpad with that FD - if there is a crash, Breakpad generates the minidump to that FD. - when the browser process detects a renderer stopped it checks the minidump file. If it's empty it deletes the file. If it's not empty, it means there was a crasher in which case it moves it to the crash dump folder for it to be picked up and uploaded by the Java side. BUG=None TEST=Test that minidumps are generated and uploaded when visiting about:crash and about:crashbrowserforrealz on Android and desktop Chrome. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=163917

Patch Set 1 #

Patch Set 2 : Clean-up #

Patch Set 3 : Clean-up (part deux) #

Patch Set 4 : Improved patch description. #

Total comments: 17

Patch Set 5 : Addressed comments. #

Total comments: 31

Patch Set 6 : More comments addressed. #

Total comments: 10

Patch Set 7 : Addressed comments. #

Total comments: 3

Patch Set 8 : Addressed latest comments. #

Patch Set 9 : Synced #

Patch Set 10 : Synced again. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+593 lines, -125 lines) Patch
M chrome/app/breakpad_linux.h View 1 2 3 4 5 6 2 chunks +7 lines, -0 lines 0 comments Download
M chrome/app/breakpad_linux.cc View 1 2 3 4 5 6 7 15 chunks +266 lines, -109 lines 0 comments Download
M chrome/app/chrome_main_delegate.cc View 1 2 3 4 5 6 7 8 9 1 chunk +15 lines, -1 line 0 comments Download
A chrome/browser/android/crash_dump_manager.h View 1 2 3 4 5 1 chunk +66 lines, -0 lines 0 comments Download
A chrome/browser/android/crash_dump_manager.cc View 1 2 3 4 5 6 7 8 1 chunk +160 lines, -0 lines 0 comments Download
M chrome/browser/chrome_browser_main_android.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chrome_browser_main_android.cc View 1 2 3 4 5 2 chunks +12 lines, -1 line 0 comments Download
M chrome/browser/chrome_content_browser_client.h View 1 2 3 4 5 3 chunks +12 lines, -0 lines 0 comments Download
M chrome/browser/chrome_content_browser_client.cc View 1 2 3 4 5 6 7 8 9 5 chunks +32 lines, -6 lines 0 comments Download
M chrome/browser/crash_handler_host_linux.cc View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/common/descriptors_android.h View 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/browser_child_process_host_impl.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/child_process_launcher.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/child_process_launcher.cc View 1 2 3 4 5 6 7 8 9 8 chunks +13 lines, -7 lines 0 comments Download
M content/browser/renderer_host/render_process_host_impl.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M content/public/browser/content_browser_client.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 13 (0 generated)
Jay Civelli
Lei, could you look at the chrome part? John, could you look at the content ...
8 years, 2 months ago (2012-10-19 01:12:47 UTC) #1
jam
https://codereview.chromium.org/11189068/diff/5020/content/browser/child_process_launcher.cc File content/browser/child_process_launcher.cc (right): https://codereview.chromium.org/11189068/diff/5020/content/browser/child_process_launcher.cc#newcode209 content/browser/child_process_launcher.cc:209: for (content::FDInfoList::const_iterator i = files_to_register.begin(); nit: no need for ...
8 years, 2 months ago (2012-10-19 16:39:17 UTC) #2
Lei Zhang
Jay, do you think breakpad_linux.cc is getting sufficiently hairy that we should separate Linux/CrOS from ...
8 years, 2 months ago (2012-10-19 23:22:34 UTC) #3
Jay Civelli
On 2012/10/19 23:22:34, Lei Zhang wrote: > Jay, do you think breakpad_linux.cc is getting sufficiently ...
8 years, 2 months ago (2012-10-22 22:09:39 UTC) #4
Jay Civelli
http://codereview.chromium.org/11189068/diff/5020/chrome/app/breakpad_linux.h File chrome/app/breakpad_linux.h (right): http://codereview.chromium.org/11189068/diff/5020/chrome/app/breakpad_linux.h#newcode12 chrome/app/breakpad_linux.h:12: extern void InitNonBrowserCrashReporter(int minidump_fd); On 2012/10/19 23:22:34, Lei Zhang ...
8 years, 2 months ago (2012-10-22 22:09:48 UTC) #5
jam
content lgtm with nit https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc File chrome/browser/android/crash_dump_manager.cc (right): https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc#newcode36 chrome/browser/android/crash_dump_manager.cc:36: nit: extra line https://codereview.chromium.org/11189068/diff/14001/chrome/browser/chrome_browser_main_android.cc File ...
8 years, 2 months ago (2012-10-23 01:20:47 UTC) #6
Lei Zhang
https://chromiumcodereview.appspot.com/11189068/diff/14001/chrome/app/breakpad_linux.cc File chrome/app/breakpad_linux.cc (left): https://chromiumcodereview.appspot.com/11189068/diff/14001/chrome/app/breakpad_linux.cc#oldcode1281 chrome/app/breakpad_linux.cc:1281: // We might be chrooted in a zygote or ...
8 years, 2 months ago (2012-10-23 02:57:33 UTC) #7
Jay Civelli
https://codereview.chromium.org/11189068/diff/14001/chrome/app/breakpad_linux.cc File chrome/app/breakpad_linux.cc (left): https://codereview.chromium.org/11189068/diff/14001/chrome/app/breakpad_linux.cc#oldcode1281 chrome/app/breakpad_linux.cc:1281: // We might be chrooted in a zygote or ...
8 years, 2 months ago (2012-10-23 20:39:55 UTC) #8
Lei Zhang
https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc File chrome/browser/android/crash_dump_manager.cc (right): https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc#newcode7 chrome/browser/android/crash_dump_manager.cc:7: #include <inttypes.h> On 2012/10/23 20:39:55, Jay Civelli wrote: > ...
8 years, 2 months ago (2012-10-23 21:34:57 UTC) #9
Jay Civelli
https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc File chrome/browser/android/crash_dump_manager.cc (right): https://codereview.chromium.org/11189068/diff/14001/chrome/browser/android/crash_dump_manager.cc#newcode7 chrome/browser/android/crash_dump_manager.cc:7: #include <inttypes.h> On 2012/10/23 21:34:57, Lei Zhang wrote: > ...
8 years, 2 months ago (2012-10-24 00:12:53 UTC) #10
Lei Zhang
lgtm with some nits. https://chromiumcodereview.appspot.com/11189068/diff/17023/chrome/app/breakpad_linux.cc File chrome/app/breakpad_linux.cc (right): https://chromiumcodereview.appspot.com/11189068/diff/17023/chrome/app/breakpad_linux.cc#newcode132 chrome/app/breakpad_linux.cc:132: static void SetProcessStartTime() { nit: ...
8 years, 2 months ago (2012-10-24 05:20:47 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jcivelli@chromium.org/11189068/45001
8 years, 2 months ago (2012-10-24 20:09:33 UTC) #12
commit-bot: I haz the power
8 years, 2 months ago (2012-10-24 22:03:40 UTC) #13
Change committed as 163917

Powered by Google App Engine
This is Rietveld 408576698