| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use a pipe between a browser and a renderer, where the renderer
writes something in case of a termination from a catchable
signal. In case when the renderer is killed by the low memory
killer, nothing gets written into the pipe.
The browser then terminates itself in a fashion similar
to the renderer.
BUG=546009
Review URL: https://codereview.chromium.org/1525023003
Cr-Commit-Position: refs/heads/master@{#368251}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now microdump handling has three modes depending on the process type:
"webview" -- displays crash dialog, supports dump on demand;
"" (browser) -- displays crash dialog, doesn't support dump on demand;
"renderer" -- doesn't display crash dialog, no dump on demand.
Dump on demand may be enabled later if we figure out how to do it
properly for sandboxed renderers.
Exported `InitMicrodumpCrashHandlerIfNecessary` as calling
`InitNonBrowserCrashReporterForAndroid` for that purpose is misleading,
and WebView doesn't need any of the functionality that it can enable.
BUG=568825
Review URL: https://codereview.chromium.org/1518913002
Cr-Commit-Position: refs/heads/master@{#364766}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In certain (as yet undiagnosed) circumstances it seems possible
for WebView instances to appear to become unresponsive, without
crashing. In order to debug this case, add
AwDebug.dumpWithoutCrashing(File) - which allows a caller to use
the breakpad minidump mechanism to produce a dump that can be
processed to extract useful information about the state of the
WebView threads.
(NOPRESUBMIT to bypass ScopedAllowIO restriction; per comment in
aw_debug.cc, this is meant to be used when WebView is in an
undefined state, and posting I/O to another thread is impossible)
BUG=537579
NOPRESUBMIT=TRUE
Review URL: https://codereview.chromium.org/1384823004
Cr-Commit-Position: refs/heads/master@{#353504}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Although strictly the GPU fingerprint is defined by the build fingerprint,
there is not currently a straightforward mapping from build fingerprint
to useful GPU / GL driver information.
In order to aid debugging of WebView crashes that occur in GL drivers,
and to better understand the range of drivers and versions for feature
blacklisting purposes, it is useful to have GPU fingerprints in breakpad
microdumps.
BUG=
Review URL: https://codereview.chromium.org/1343713002
Cr-Commit-Position: refs/heads/master@{#351289}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The crash component cannot be used on iOS (as it depends on //content).
Turn it into a layered component so that it is possible to put shared
code related to crash there (components/crash_keys and objc_zombie.{h,mm}).
BUG=522955
TBR=sky@chromium.org
TBR=jschuh@chromium.org
NOPRESUBMIT=true
Review URL: https://codereview.chromium.org/1315303004
Cr-Commit-Position: refs/heads/master@{#349643}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
id:100001 of https://codereview.chromium.org/1315303004/ )
Reason for revert:
This breaks Webkit layout tests.
Original issue's description:
> Turn components/crash into a layered component.
>
> The crash component cannot be used on iOS (as it depends on //content).
> Turn it into a layered component so that it is possible to put shared
> code related to crash there (components/crash_keys and objc_zombie.{h,mm}).
>
> BUG=522955
> TBR=sky@chromium.org
> TBR=jschuh@chromium.org
> NOPRESUBMIT=true
>
> Committed: https://crrev.com/4e483c64be5136b785e92c5baa971baca7eea2bc
> Cr-Commit-Position: refs/heads/master@{#349384}
TBR=blundell@chromium.org,jam@chromium.org,jschuh@chromium.org,mark@chromium.org,rsesek@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=522955
Review URL: https://codereview.chromium.org/1351923002
Cr-Commit-Position: refs/heads/master@{#349417}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The crash component cannot be used on iOS (as it depends on //content).
Turn it into a layered component so that it is possible to put shared
code related to crash there (components/crash_keys and objc_zombie.{h,mm}).
BUG=522955
TBR=sky@chromium.org
TBR=jschuh@chromium.org
NOPRESUBMIT=true
Review URL: https://codereview.chromium.org/1315303004
Cr-Commit-Position: refs/heads/master@{#349384}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement "SafeToUseSignalHandler()" which detects whether the native
bridge used for binary translation is currently in use and whether it is
of a sufficiently recent version to avoid interfering with breakpad's
signal handler, and use it to allow microdump generation on x86 devices
in conditions where this is safe.
We will generate dumps when running in processes with pure x86 code, or
when running on devices that are emulating ARM code using version 2 or
higher of the native bridge library.
BUG=477444
Review URL: https://codereview.chromium.org/1290643003
Cr-Commit-Position: refs/heads/master@{#345039}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the plumbing to return the right product name and version
to breakpad, which will be propagated into the microdump.
The new microdump output looks as follows:
--------- beginning of main
W/google-breakpad(25214): -----BEGIN BREAKPAD MICRODUMP-----
W/google-breakpad(25214): V WebView:44.0.2403.0
W/google-breakpad(25214): O A arm 04 google/occam/mako:5.1.1/LMY48D/1906941:userdebug/dev-keys
[the rest is unchanged]
BUG=456494,457700
TBR=torne@chromium.org
Review URL: https://codereview.chromium.org/1159773002
Cr-Commit-Position: refs/heads/master@{#331341}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
An intricate entangling of libsigchain, sigaction() chaining and
user-space SIGSEGV handling by binary translator cause persistent
crashes when a SIGSEGV handler is installed by a x86 library on
a hybrid application which uses both Arm and x86 libraries.
Backing out the crash handler as a temporary workaround.
More context in the related bug.
BUG=477444
Review URL: https://codereview.chromium.org/1089303002
Cr-Commit-Position: refs/heads/master@{#325438}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove references to android_webview_build now that we no longer support
that build configuration. Fold conditions into their parents where
appropriate. Activate a CHECK() that was previously omitted due to
incompatibility with android_webview_build==1.
BUG=440793
Review URL: https://codereview.chromium.org/1043173002
Cr-Commit-Position: refs/heads/master@{#323031}
|
|
This CL:
- Pulls in the dependencies required to build breakpad and the
crash component.
- Introduces a crash reporter for WebView which unconditionally
enables microdumps (but not minidump uploads).
- Introduces a fallback no-op implementation which avoids the burden
of importing and supporting breakpad in the internal Android builds
(which are going to be deprecated soon).
Impact of this change on the WebView APK size:
Before the change: 25700337 bytes
After the change: 25720974 bytes
Delta: 20637 bytes
Impact of this change on the uncompressed libwebviewchromium.so lib:
Before the change: 28547980 bytes
After the change: 28576844 bytes
Delta: 28864 bytes
BUG=410294, 456494
TBR=mark@chromium.org
Review URL: https://codereview.chromium.org/902093003
Cr-Commit-Position: refs/heads/master@{#315357}
|