Capture a report on failed browser rendez-vous.
Overview: Browser process hangs are believed to be responsible for a large fraction of browser unclean shutdowns. This patch is to get visibility into the problem on windows using the Kasko reporter. Note: This functionality is hidden behind buildflags, and only triggers for users with stats collection consent on canary/unspecified channels. At this time, it is only considered for one-off releases. Details: - Use of the Kasko reporter is required for its ability to capture reports from other processes. - Pulls out Kasko reporting code to kasko_utils - Invoke Kasko on failed rendez-vous. - Hidden behind build flags (kasko and kasko-rdv-capture). BUG=478209 Review URL: https://codereview.chromium.org/1844023002 Cr-Original-Commit-Position: refs/heads/master@{#386983} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: f071e88974318cec29c02bd5b92fe61868da8569
This commit is contained in:
Родитель
31466d3b44
Коммит
9f73de0bb6
29
common.gypi
29
common.gypi
|
@ -1065,18 +1065,23 @@
|
|||
# http://crbug.com/574476
|
||||
'fastbuild%': 2,
|
||||
}],
|
||||
|
||||
# Enable crash reporting via Kasko.
|
||||
# Enable hang report capture. Capture can only be enabled for 32bit
|
||||
# Windows.
|
||||
['OS=="win" and target_arch=="ia32" and branding=="Chrome"', {
|
||||
# This needs to be enabled with kasko_hang_reports.
|
||||
'kasko%': 0,
|
||||
# Enable hang reports from the watcher process.
|
||||
'kasko_hang_reports%': 0,
|
||||
# Enable failed rendez-vous reports.
|
||||
'kasko_failed_rdv_reports%': 0,
|
||||
}, {
|
||||
'kasko%': 0,
|
||||
# Enable hang reports from the watcher process.
|
||||
'kasko_hang_reports%': 0,
|
||||
# Enable failed rendez-vous reports.
|
||||
'kasko_failed_rdv_reports%': 0,
|
||||
}],
|
||||
],
|
||||
|
||||
# Enable hang reports in Kasko. Requires Kasko to be enabled.
|
||||
'kasko_hang_reports%': 0,
|
||||
# Kasko reporting is disabled by default, but may get enabled below.
|
||||
'kasko%': 0,
|
||||
|
||||
# Setting this to '0' will cause V8's startup snapshot to be
|
||||
# embedded in the binary instead of being a external files.
|
||||
|
@ -1228,6 +1233,7 @@
|
|||
'syzyasan%': '<(syzyasan)',
|
||||
'kasko%': '<(kasko)',
|
||||
'kasko_hang_reports%': '<(kasko_hang_reports)',
|
||||
'kasko_failed_rdv_reports%': '<(kasko_failed_rdv_reports)',
|
||||
'syzygy_optimize%': '<(syzygy_optimize)',
|
||||
'lsan%': '<(lsan)',
|
||||
'msan%': '<(msan)',
|
||||
|
@ -2023,10 +2029,15 @@
|
|||
}, {
|
||||
'win_console_app%': 0,
|
||||
}],
|
||||
# Disable hang reporting for syzyasan builds.
|
||||
['syzyasan==1', {
|
||||
'kasko%': 1,
|
||||
# Disable hang reports for SyzyASAN builds.
|
||||
# Note: override.
|
||||
'kasko_hang_reports': 0,
|
||||
'kasko_failed_rdv_reports': 0,
|
||||
}],
|
||||
# Enable the Kasko reporter for syzyasan builds and hang reporting.
|
||||
['syzyasan==1 or kasko_hang_reports==1 or kasko_failed_rdv_reports==1', {
|
||||
'kasko': 1,
|
||||
}],
|
||||
['component=="shared_library" and "<(GENERATOR)"=="ninja"', {
|
||||
# Only enabled by default for ninja because it's buggy in VS.
|
||||
|
|
Загрузка…
Ссылка в новой задаче