Investigate excess strong binding child processes on Android |
||
Issue descriptionUMA shows that most of the strong binding OOMs are caused by having at least one extra strong binding process alive. In high end devices more than 60% of OOMs had > 2 strong binding processes left (one is expected as GPU). In low end devices 60% of them had at least one other strong binding left. These stats are collected after making sure that background renderer playing media does not have strong binding. https://uma.googleplex.com/p/chrome/histograms/?endDate=latest&dayCount=28&histograms=Stability.Android.StrongBindingOomRemainingStrongBindingCount&fixupData=true&showMax=true&filters=platform%2Ceq%2CA%2Cchannel%2Ceq%2C2%2Cfinch%2Cstgr_filter%2C2797913123%7C869277271%2Cisofficial%2Ceq%2CTrue&implicitFilters=isofficial
,
Sep 12
,
Sep 13
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/84d687c8f4f3689a2f6e08d8f5947892380e447e commit 84d687c8f4f3689a2f6e08d8f5947892380e447e Author: Siddhartha <ssid@chromium.org> Date: Thu Sep 13 19:54:13 2018 Android: Fix remaining binding count to not include current process The UMA recorded when strong binding process OOMs to find if there were other processes alive, included current process bindings if it was not unbound. So, subract the current process binding from the counts. BUG=882741 Change-Id: I3a5774fdacf20cc94b655434c50ce0626c94fb0e Reviewed-on: https://chromium-review.googlesource.com/1225093 Commit-Queue: Siddhartha S <ssid@chromium.org> Reviewed-by: Bo <boliu@chromium.org> Reviewed-by: Tommy Nyquist <nyquist@chromium.org> Cr-Commit-Position: refs/heads/master@{#591123} [modify] https://crrev.com/84d687c8f4f3689a2f6e08d8f5947892380e447e/base/android/java/src/org/chromium/base/process_launcher/ChildProcessConnection.java [modify] https://crrev.com/84d687c8f4f3689a2f6e08d8f5947892380e447e/base/android/junit/src/org/chromium/base/process_launcher/ChildProcessConnectionTest.java [modify] https://crrev.com/84d687c8f4f3689a2f6e08d8f5947892380e447e/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncherHelperImpl.java
,
Sep 21
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8bd89f025cddd964adca6fa874a8cdafecb09eef commit 8bd89f025cddd964adca6fa874a8cdafecb09eef Author: Siddhartha <ssid@chromium.org> Date: Fri Sep 21 00:22:24 2018 Use stability of the browser process to decide whether or not to start background tracing on Android We use the crash dump uploader to check if we had any browser crash dumps from the previous sessions, or if we uploaded browser crash dumps in previous session. Chrome tracing delegate uses this information to make sure browser is stable before starting background tracing. BUG=882741 Change-Id: Idc55b90f76e2739c054777e01ea39ce7ba5a131d Reviewed-on: https://chromium-review.googlesource.com/1220191 Reviewed-by: oysteine <oysteine@chromium.org> Reviewed-by: Ilya Sherman <isherman@chromium.org> Reviewed-by: Tommy Nyquist <nyquist@chromium.org> Commit-Queue: Siddhartha S <ssid@chromium.org> Cr-Commit-Position: refs/heads/master@{#593016} [modify] https://crrev.com/8bd89f025cddd964adca6fa874a8cdafecb09eef/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadService.java [modify] https://crrev.com/8bd89f025cddd964adca6fa874a8cdafecb09eef/chrome/browser/crash_upload_list/crash_upload_list_android.cc [modify] https://crrev.com/8bd89f025cddd964adca6fa874a8cdafecb09eef/chrome/browser/crash_upload_list/crash_upload_list_android.h [modify] https://crrev.com/8bd89f025cddd964adca6fa874a8cdafecb09eef/chrome/browser/tracing/chrome_tracing_delegate.cc |
||
►
Sign in to add a comment |
||
Comment 1 by ssid@chromium.org
, Sep 11