Status Update
Comments
ye...@google.com <ye...@google.com> #2
Thanks for filing the issue.
I have verified it on the available device, Pixel 6a (AP3A.240905.015.A2), with Chrome Dev version 135.0.6999.0, and noticed that old tabs are still visible without converting into a blank page. I navigated to multiple links and new pages, and in both scenarios, the old tabs remain visible without any issues. Could you please recheck and let us know if the issue is still reproducing? If it does, kindly provide a video recording for better understanding of the issue and further investigation. I have attached a video recording for reference—please have a look.
Thanks!
mr...@gmail.com <mr...@gmail.com> #3
pe...@google.com <pe...@google.com> #4
Thank you for providing more feedback. Adding the requester to the CC list.
ye...@google.com <ye...@google.com> #5
Thank you for providing the video recordings. I have verified the steps on my end with the mentioned OS, but the issue is still not reproducing from our side. Could you please try again with multiple pages after clearing Chrome’s data? If the issue persists, kindly let us know the device you are facing this issue on. Thanks!
mr...@gmail.com <mr...@gmail.com> #6
i un-installed chrome Dev and reinstalled, no difference using the latest version from play store
problem still there, which website doesn't matter
attached is new video
pe...@google.com <pe...@google.com> #7
Thank you for providing more feedback. Adding the requester to the CC list.
ye...@google.com <ye...@google.com> #8
The issue doesn't repro on Dev 135.0.6999.0., verified on Samsung version 14. The issue doesn't repro on the stable build either.
@mrbart, I have attached a video recording for reference. Could you please clear all the recent tabs, relaunch Chrome, and try again? If the issue still repros, please get back to us.Thanks!
mr...@gmail.com <mr...@gmail.com> #9
ye...@google.com <ye...@google.com> #10
Samsung version : UP1A.231005.007
qn...@gmail.com <qn...@gmail.com> #11
I can provide additional information or logs/logcat if needed.
mr...@gmail.com <mr...@gmail.com> #12
ma...@gmail.com <ma...@gmail.com> #13
It doesn't seem to happen with the steps in the issue's description, but very similar...often if I'm switching between tabs or apps, I come back to a tab and it's blank. Opening the tab list and choosing that tab will resolve it (the content appears, rather than the page refreshing). It will happen with even just a few tabs/apps running (ex. have seen it with even 1-3+ tabs open, its not like it only happens with tens of tabs open).
Android 15
Pixel 9 Pro Build/AP4A250205.002
Chrome 134.0.6998.39
ye...@google.com <ye...@google.com> #14
I tried again on Android 15 (Pixel 9 Pro, Build/AP4A250205.002) with Chrome 134.0.6998.39, but I didn't notice any blank screen while navigating back to old tabs. I think the frequency is low.
I will monitor this issue closely, track it frequently, and update here if I observe the same behavior on my end. Meanwhile, if you encounter this issue again, please comment in the bug report—it will help us identify the root cause and work towards a fix. Thanks!
er...@gmail.com <er...@gmail.com> #15
Pixel 9
Android 15 Build AP4A250205.002
Chromium 134.0.6998.45
It's now occuring so frequently for me that it happens nearly every time I have multiple tabs. It's almost unusable at this point.
li...@google.com <li...@google.com> #16
@reporters: If it happens to you often, can you provide the following details:
- Phone model
- List of variations, as seen in: chrome://version, under "Active Variations". This should have the following format:
e61eae14-377be55a
2b978349-ca7d8d80
102166ac-ca7d8d80
cae5a6b5-f23d1dea
2da5c32c-ca7d8d80
4583a71-ca7d8d80
158e27e-377be55a
f69863c5-8d55def
3e8fe123-ca7d8d80
bb88d3f2-377be55a
d0d3d7ff-c68e72c9
f73edf58-ca7d8d80
bc06eaa3-ca7d8d80
147c5d66-ca7d8d80
cc96eaac-1f8c5973
83743a2d-ca7d8d80
18465cc-ca7d8d80
d9e9eb6d-ca7d8d80
94e21eca-ca7d8d80
73b87075-ca7d8d80
efd50d3f-377be55a
dc88470b-1f8c5973
dadd8a8c-ca7d8d80
13427e22-ca7d8d80
83efc983-377be55a
8a8e440e-ca7d8d80
6b7d4090-ca7d8d80
2dbe7f3c-bf6640f9
b7ed4ad2-3249c1ae
a22d256e-f9a43703
c66576a2-84cc8ea2
3095aa95-3f4a17df
e0a545c4-ff6d0d
And can be >100 entries long.
mr...@gmail.com <mr...@gmail.com> #17
6f27bc8a-bfdec7ff
2b978349-e54387e6
35a4ced8-3f4a17df
1073a35d-f23d1dea
e1814b25-330beb4e
fd9e245f-5fb31bfb
87ef25e4-f5b35ce4
2f6934d6-cb09aae5
7103530a-57661554
181d9f0c-2eee41b7
89986dbe-fdd63054
6c1ab71a-ff75f251
9ab96e3-c68e72c9
cae5a6b5-3f4a17df
4583a71-f23d1dea
6ec9ba53-3f4a17df
f69863c5-8d55def
7651c438-7b674833
3e8fe123-3f4a17df
d0d3d7ff-4cbe36cf
f73edf58-3f4a17df
bc06eaa3-3f4a17df
147c5d66-3f4a17df
3192d619-41a34925
97e71d4c-f23d1dea
9ccbb08b-3f4a17df
83743a2d-f23d1dea
ff6056ba-f23d1dea
e9fef5c2-a3a259fa
d9e9eb6d-a3a259fa
7bd7d024-f23d1dea
94e21eca-1f6476a5
d8c497dc-f23d1dea
73b87075-3f4a17df
dc88470b-27689602
dadd8a8c-3f4a17df
54c87162-3dea81ab
7bd59555-f23d1dea
98e50d92-f23d1dea
6b7d4090-4fa8e0e3
2dbe7f3c-8834236f
cbc0b4bb-f23d1dea
95988a12-3ac589b9
bd14a89-f23d1dea
1eb32835-f0ec5179
b7ed4ad2-1ea7fff5
c66576a2-b9d928b3
f9e73310-3f4a17df
ca05d627-3f4a17df
e6c167d9-ca7d8d80
4664617a-54fa415c
3843461e-4cbe36cf
999e8980-b9386c08
7faa7be9-3f4a17df
8a12c4c0-688c2847
ce4a99f0-5a8121a
41e765a5-ba7e8c79
f314f5b9-3f4a17df
cac8d3c4-bed2af3c
7840af09-7f05ab66
a5712286-d9b4f657
85754f87-2eee41b7
fc1790de-3f4a17df
6e3d443c-5978ad35
6cd7aa52-3f4a17df
691d4256-5df7b819
5e4b4ebb-2679ac11
b617cdf5-3f4a17df
3779be93-af2cb1de
8c6d6f42-da773fbf
1b5a61aa-4362e5e8
f8411335-f0dbd20c
a582a1b8-5ad3f43d
d7ce3099-349ddeb0
bd6dd170-15b0a0a2
beae798-c454b490
55920447-3f4a17df
a05c89eb-e4638d2a
7a0fa40a-f1b9f569
d603785e-e0d69ce
ce9fa089-3f4a17df
dd2c99d6-f23d1dea
a61cb6b8-ca7d8d80
7e6af697-ca7d8d80
8f321ce-f23d1dea
4df7655b-5a8121a
a716fea0-f23d1dea
3e672fd9-3f4a17df
ae1581ef-b83c2d00
3c978b59-349b3c71
255aa854-de4a92e8
9cf6c713-306324d5
5a24997e-f23d1dea
95ed2bbe-efa41bd0
7feffab5-b8233f1b
ac900222-ec97615f
95a095bd-7b694d40
96d006a-a3a259fa
c2d7a2b1-5fb31bfb
f42905ff-32ff750a
71c14987-17606bad
eec7c38f-17a47e72
db35a749-580d8a13
f65fe3d3-68a0348a
ad9b71e2-4d1f0270
47606384-3f4a17df
49273a42-26b3f74c
b36d892f-9abffa12
5e3a236d-59e286d0
930b1a0-f23d1dea
d43ddfd9-b20da897
17196951-377be55a
a716659b-e9945e0e
8a9719ac-d1a61020
cacd54c8-ca7d8d80
f7b9a9e3-aa63d6ef
4b82c9ff-f7cc9dfc
c88fa1e2-f7cc9dfc
8b7b96c7-417f9ea6
eef5d69a-d762fb27
9887a010-9179e832
fba0616d-f23d1dea
244585ec-ca7d8d80
a8a12e4d-f7cc9dfc
136ff6f9-3dea8374
4076100b-f23d1dea
664def95-9abffa12
778c677c-6e51b958
7fe519ae-68a0348a
aa21b99b-10db844
b76b514f-12afe5fa
819163c8-ff75f251
62e82091-59e286d0
f381b82f-3f4a17df
97df86a8-ca7d8d80
59a12fbe-59481360
de028327-d42e8187
2ca06d17-8cd0bc9c
5bca9eee-3c634a9f
2be5fc80-3f4a17df
66b7a83f-f23d1dea
f3f1bfdb-f23d1dea
d721a76b-f23d1dea
86362250-e33309b0
4ea303a6-ecbb250e
33d08a4f-3f4a17df
f3b6291d-bfa020a6
3212781a-eaef2d11
393339bd-3f4a17df
977e3a5f-5a8121a
9a564e2a-3f4a17df
79d7856f-38873cd1
f07467f2-a3a14831
c7b6bf9d-c8a33f7c
b6f29041-92970c
d404d031-78a00a28
2bac9a6a-7d821a91
e85106e5-cd959b22
c046d00b-c8a33f7c
d8828574-da773fbf
3c68162d-3f4a17df
3ced0aa9-46f1be30
af3bcdf9-72064fb3
8e8365ea-41ab810d
931eb241-545a9bab
6ef0294d-f23d1dea
52a20523-f23d1dea
d0083347-2c8fe600
2bac45ad-f23d1dea
5b364a35-ace4e138
f9675edd-f23d1dea
5b87cd6f-9a71a6b
ac8ad2d0-b240576f
8782f1a1-3f4a17df
39cad3e5-ae56df86
f98f9dbf-c2d0b2b9
6174e731-e0d69ce
d01a2361-f23d1dea
30bcdd88-3f5e32c4
54c1f277-42091cf6
494d8760-52325d43
bc93991a-e1cc0f14
3ac60855-486e2a9c
f48c01d3-daa409e4
63dcb6a3-6e597ede
e706e746-bd104136
f296190c-30f715f3
4442aae2-a5822863
f690cf64-d7f6b13c
ed1d377-e1cc0f14
75f0f0a0-e1cc0f14
710c3f90-4ad60575
e2b18481-a90023b1
e7e71889-e1cc0f14
3a8271ac-12c226
eb37c93a-4e158d68
bc9a7ea9-80383347
bea4a9c2-544acff8
92c76c82-3f4a17df
d89640a1-8b140fb3
762e8080-ffb6e281
e92dc7d-4657d663
c5eb687a-9abffa12
3c8a4df0-cb316fdd
169cac91-3f4a17df
49171648-3f4a17df
797cbb37-ca7d8d80
b357b792-c836f3a2
f4f00e05-f23d1dea
6c377b0f-a744f381
9481ce98-3f4a17df
2a426c03-3d47f4f4
aca9df2c-3f4a17df
a3bc7210-3f66c0bc
b100ac4-dee66fa8
4651ad61-8533ea9a
59748665-8e9604d4
65250343-999b333
553aead6-4a95a5b1
fe4babb8-4a95a5b1
6205871c-4a95a5b1
382b54bb-29f03e2f
70678518-dee66fa8
be338734-4a95a5b1
6f316e34-cc562941
5f9907a9-206f6a6e
8eeccb9a-4dafc4ee
2b465683-3601ad67
52fc7926-1790ff02
bc9b361d-dee66fa8
a41a7188-42cfaffb
ff71bfdc-dee66fa8
a6fa7475-dee66fa8
92cfa89f-dee66fa8
6daa4147-dee66fa8
4b935545-3d47f4f4
9a38bae3-6046c8a7
2d1e43a3-3d47f4f4
30e58f57-ca7d8d80
c4a500a4-3d47f4f4
386dc267-3d47f4f4
a4406b35-1657e2d6
408da146-1657e2d6
15a5ce8f-5d629e25
5168dcfa-c04a3c7d
f6918184-a714ab2
dc20670d-3f4a17df
d69d967d-3695c92e
d4e26075-e28f41e0
pa...@gmail.com <pa...@gmail.com> #19
Happens quite often, never go a day without and often multiple times per hour.
It seems to only happen with a soft open of a tab which is still partially in memory. On full reload of a tab I never experience blank tabs. Sometimes even need to reopen two times to get the actual page to show again.
Also for sanity checked nightly of Brave but same behavior there with even under 10 tabs
er...@gmail.com <er...@gmail.com> #20
Pixel 9, Android 15 Build BP1A.250305.020
Chromium 134.0.6998.95
ye...@google.com <ye...@google.com> #21
I verified this issue once again as part of my follow-up on Pixel 7a (OS: AP3A.240905.015.A2) and Pixel 9 (Android 15, Build: BP1A.250305.020), and did not notice any blank pages while switching between tabs or apps.
@mdjones, could you please assist us in identifying the cause of this issue? If this issue doesn't fall under your scope, kindly help us by reassigning it to the appropriate developer. Thanks in advance!
md...@google.com <md...@google.com> #22
ckitagawa@ and wenyufu@, can you help triage this?
ck...@google.com <ck...@google.com> #23
I noticed this happening this past weekend as well on Pixel 9 Pro 134.0.6998.109. I agree it has seemingly gotten quite bad (in particular this past week for me). I thought it was just the websites I was visiting maybe, but perhaps it is something else in that we either made a recent change or there is an experiment at play causing this issue.
Reloading the tab fixes the issue, and it only happens if you leave the current tab for a while. I have two theories:
-
I suspect, but have not been able to confirm, the OS is killing a tab. If that is the case it then
is supposed to be true and should result in a reload to bring back a renderer. We could perhaps try to simulate this by justneedsReload()
SIGKILL
ing a background renderer and seeing if it is non-recoverable. -
There is a rendering issue where the tab/renderer does exist, but for some reason its "live layer" in the compositor is not being displayed. For this I would start looking at
and trace down to native, but if this is at play then it could be anywhere in the compositing/GPU stack which will be much harder to track down.StaticLayout -
It is possible the root cause is something other than the 2 theories above. If anyone cc'd has ideas, I'd appreciate hearing them.
While I have some knowledge of both possibilities I'm far from an expert on either so any suggestions from anyone else would be appreciated.
I'll spend some time this morning trying to reproduce this under some kind of debugger/emulator.
ck...@google.com <ck...@google.com> #24
This is the coverted hashes list for
ANGLEPerContextBlobCache-Enabled_20241007
AdsP4-Control_20241117
AlwaysBlock3pcsIncognito-Enabled
AndroidFallbackToNextSlot-Control
AndroidHubSearch-EnabledAllParamsOff_CANARY_DEV_20241218
AndroidPdfInline-Control_20250128
AndroidPdfInlineBackport-Enabled_20250128
AndroidSpareRendererCreation_V2-EnableBoth_20250220
AndroidTabDeclutterDuplicateUrls-Control_CANARY_DEV_20250205
AndroidUseFrameIntervalDecider-Control_20250213
AnnotatedPageContentExtraction-Glic1
AsyncFastCheckout-Control_20250307
AsyncNotiicationmanager-Enabled_20250225
AudioInputConfirmReadsViaShmem-Enabled
AutofillBetterLocalHeuristicPlaceholderSupport-Control
AutofillEnableCardInfoRuntimeRetrieval-Enabled
AutofillEnableCvcStorage-Launched_98
AutofillEnableEmailHeuristicOutsideForms-Enabled_14022025
AutofillEnableSupportForParsingWithSharedLabels-Enabled
AutofillFixValueSemantics-Control_20250225
AutofillGreekRegexes-Enabled
AutofillI18nFRAddressModel-Enabled
AutofillI18nNLAddressModel-Enabled
AutofillImproveSubmissionDetectionV2-Enabled_FallbackOptimize_20250225
AutofillIncludeMaxLengthInCrowdsourcing-Control
AutofillIncludeSelectOptionsInCrowdsourcing-Enabled
AutofillInferLabelFromDefaultSelectText-Control
AutofillModelPredictions-Control
AutofillOptimizeFormExtraction-Control_20250304
AutofillRecordCorrectionOfSelectElements-Control_20250304
AutofillRelaxAddressImport-Control
AutofillSupportPhoneticNameForJP-Control_20250228
AutofillVirtualViewStructureAndroid-Control
AutofillVoteWhenInactive-Enabled
BackForwardCacheForPageWithCacheControlNotStoredHeader-Enabled_20240925
BackForwardCacheNonStickyDoubleFix-Enabled
BackForwardTransitions-IphWithBackgroundCompression_20250305
BatteryStatusAndPowerSavingBroadcastReceiversInBackground-Control
BookmarksUseBinaryTreeInTitledUrlIndex-Control
BoostRenderProcessForLoading-BoostPrerendering_20250210
BrowserSearchGatewayTrafficMigration-Enabled_20250224
BusyLoopOnMainThread-Control
CCSlimming-Holdback
CCTEphemeralMediaViewerExperiment-Control
CCTNavigationalPrefetch-Holdback_20250220
CSSLazyParsingFastPath-Control_9
CanvasHibernationExperiments-Enabled_20240923
CheckWebAppExistenceAsync-Enabled
ChromeChannelDev-Enabled
ClankMostVisitedTilesNewScoring-Default
ClayBlocking-Default_20250120
ClickToCapturedPointer-Control_20250225
CookieDeprecationFacilitatedTestingCookieDeprecation-PerProfileControlOne_PreStable_20240207
CreateURLLoaderPipeAsync-Enabled
DIPSOnHTTPCache-Control_v4
DedicatedWorkerAblationStudy-Control_20250220
DefaultPassthroughCommandDecoder-Default_multistudy_20241121
DeprecateUnload-Enabled
DescribeIt-Enabled_20241115
DisableCompressParkableStrings-Control_20250218
DisableGeoLanguageModel-Enabled_20240228
DisableListTabSwitcher-Control_20250213
DwaFeature-Enabled
EdgeToEdgeAndroid-BrowserControlsRefactorOnly_133_20250205
EdgeToEdgeEverywhere-Enabled
EducationalTipModule-Control_20250305
EnableLazyLoadImageForInvisiblePage-Enabled_PrerenderPage_CANARY_DEV_20241204
EnablePixPayFlow-Enabled
EnableTLS13EarlyData-Enabled_20250122
EscapeLtGtInAttributes-Control_20250127
EventTimingIgnorePresentationTimeFromUnexpectedFrameSource-Enabled_V1
ExpandCompositedCullRect-control_2
ExpiredHistograms-ExpiryEnabledWithAllowlist
ExtendedReportingRemovePrefDependency-DisabledFeatures_20250211
ExtremeLightweightUAFDetector-BrowserOnly_1000_0_512_v10
FedCmIntrusionMitigation-UpdatedCooldownPeriod
FencedFramesEnableCrossOriginAutomaticBeaconData-Enabled
FenderAutoPreconnectLcpOrigins-EnabledWithOne_20250129
FieldTracing-SrpLeakageReportTracing_10
ForceSupervisedSigninWithCapabilities-Control_20250120
FusedLocationProviderTuning-Enabled
GCOnArrayBufferAllocationFailure-Control
GwpAsan2024Android-Default
HappyEyeballsV3-Default
HeapProfilerMobileSamplingRate-Control
HideTabletToolbarDownloadButtonAndroid-Control_20250220
HstsTopLevelNavigationsOnly-Control
HttpCacheNoVarySearch-Enabled
HttpDiskCachePrewarming-WithoutReadAndDiscardBodySkipDuringStartupSubresourceOnly_20250204
HttpsFirstModeV2ForTypicallySecureUsers-Control_20250227
IPProtectionPhase0-default_2025-03-04_Canary_Dev_Perf_External_Android
IgnoreDuplicateNavs-Enabled_threshold_1s_20241031_20241031
InitImageDecodeLastUseTime-Control
JumpStartOmnibox-Enabled_60
KeepAliveInBrowserMigrationHoldback-Default_20250214
LCPPDeferUnusedPreloadRequest-EnableWithPostTaskLinkPreloadOnly_20250205
LCPPFontURLPredictor-Enabled_1_20250228
LCPPImageLoadingPriority-Control_20250304
LCPPPrefetchSubresource-Control_20250128
LCPTimingPredictorPrerender2-EnabledAll_20250304
LayoutNGShapeCache-Control_2
LimitedEntropyRandomizationTestStudyGwsVisible-Enabled_20241003
LogUrlScoringSignalsAndroid-EnabledWithScoringSignalsAnnotators_20241009
LowEndMemoryExperiment-Control_20250115
LowPriorityAsyncScriptExecution-NonAds_WhenLcpNotInHtml_DynamicallyInsertedAndAsyncScript_20250122
MHTML_Improvements-Enabled
MediaCodecLinearBlock-EnabledV1
MediaRecorderUseMediaVideoEncoderOnAndroid-Control_20250303
MetricsAndCrashSampling-InReportingSample
MigrateAccountPrefs-Control
MultipleLayerMemberRefTestStudy-GroupA_20241008
NewContentForCheckerboardedScrolls-EnabledLaunch
NonStableGWS-Default_AndroidDev
OmniboxMlUrlScoringAndroid-Enabled_SmallModel_20241216
OmniboxOnDeviceBrainModelI18nAndroid-Default
OptimizationTargetClientSidePhishingGradualRollout-Enabled_20250306
OptimizationTargetGeolocationPermissionPredictionsGradualRollout-Enabled_20250305
OptimizationTargetNotificationPermissionPredictionsGradualRollout-Enabled_20250305
PageMetadataPlatformExpansion-Enabled_20250116
PartialPageZeroing-Control_20250219
PartitionAllocBackupRefPtrAndroid-Enabled_NonRenderer_v32
PartitionAllocFewerMemoryRegions-Control
PartitionAllocMemoryTagging-Default
PartitionAllocParameterTuningAndroid-Enabled_20250305
PartitionVisitedLinkDatabaseWithSelfLinks-EnabledWithSelfLinks_20250227
PassHistogramSharedMemoryOnLaunch-Control
PasswordFormClientsideClassifier-Control_20250303
PasswordFormGroupedAffiliations-Enabled_20241211
PasswordLeakToggleMove-Control_20250115
PerfCombined2024-Enabled_Launched
PolicyBlocklistProceedUntilResponse-Holdback_20241216
PostDelayedTaskFocusTab-Control_20250307
PostFREFixMetricsAndCrashSampling-InReportingSample
PreOpenPreloadDatabase-Enabled
PrefetchReusable-Default
PreloadingConfig-PreloadingEnabled_20250124
Prerender2FallbackPrefetchSpecRules-Enabled_ReusableUseIfIsLikelyAheadOfPrerender4096KiB_20250226
PreserveDiscardableImageMapQuality-Control_3
PrivacySandboxAdsNoticeCCT-Enabled_20250218
ProtectedAudienceBAndAServerAPIMultiSeller-Enabled
ProtectedAudienceDealsSupport-Control
ProtectedAudienceTrustedKVSupport-Control
ProtectedAudienceTrustedSignalsKVv1CreativeScanning-Control
ProtectedAudiencesKAnonymityEnforcementStudy-Disabled_20250304
QUIC-EnabledNoId
RemoveSearchEngineChoiceAttribution-Enabled
RenderDocumentWithNavigationQueueing-EnabledAllFramesWithQueueing_NoDelayLTV_20250107
ResamplingScrollEvents-Latency375
RetainOmniboxOnFocusV2-Enabled
RustyPng-Control_20250220
ScaleScrollbarAnimationTiming-Enabled
SearchEngineChoiceClearInvalidPref-Enabled_starts_20250306
SearchInCCT-Control_V2
SearchPrefetchAndroid_Incognito-Enabled_20250303
SeedFileTrial-SeedFiles_V7
SelfFreeze-Enabled_Both_20250304
SendTabToSelfIOSPushNotifications-Enabled_NON_STABLE_50_20241113
ServiceWorkerAutoPreload-EnableWithAllowList_20250304
ServiceWorkerStaticRouterRaceNetworkRequestPerformanceImprovement-Enabled_20250303
ShareCustomActionsInCCT-Control_20250127
SharingDisableVapid-Enabled
ShowWarningsForSuspiciousNotifications-EnabledWithButtonSwap_20250227
SimdutfBase64Support-Control_20250123
SiteInstanceGroupsForDataUrls-Enabled_20241206
SkipIsolatedSplitPreload-Control_20250221
SkipPagehideInCommitForDSENavigation-Control
SpeculativeImageDecodes-Control
SpeculativeServiceWorkerWarmUp-Control_20250214
SqlScopedTransactionWebDatabase-Control
StandardizedTimerClamping-Enabled_1
StopExportDFCMetricsExperiment-Control
SyncIncreaseNudgeDelayForSingleClient-EnabledWith3XNudgeDelay
SyncIncreaseSessionNudgeDelay-EnabledWith20SecondsDelay
SyncPointGraphValidation-Enabled
TabGroupSyncAutoOpenOffByDefault-Control_CANARY_DEV_20250218
TabSwitcherForeignFaviconSupport-Enabled_20250213
ThrottleFrameRateOnManyDidNotProduceFrame-Control_20250120
ThrottleMainFrameTo60Hz-Control
TimedHTMLParserBudgetForAndroid-Enabled_10_100_2_20250205
TransportSecurityFileWriterScheduleAndroid-Enabled1Minute_20250128
UKM-Enabled_20180314
UMA-LayerConstrained-Uniformity-LowEntropyLayer_LowEntropyStudy-group_01
UMA-Population-Restrict-normal
UMA-Pseudo-Metrics-Effect-Injection-25-Percent-BigEffect_19_20241105
UMA-Uniformity-Trial-0.5-Percent-1-group_06
UMA-Uniformity-Trial-0.5-Percent-2-group_12
UMA-Uniformity-Trial-1-Percent-group_24
UMA-Uniformity-Trial-10-Percent-group_04
UMA-Uniformity-Trial-10-Percent-sanity-group_03
UMA-Uniformity-Trial-100-Percent-group_01
UMA-Uniformity-Trial-20-Percent-group_01
UMA-Uniformity-Trial-20-Percent-Session-default
UMA-Uniformity-Trial-5-Percent-group_08
UMA-Uniformity-Trial-50-Percent-group_01
UkmSamplingRate-Sampled
UnoPhase2FastFollowsAndroid-Control_20250211
UseContextSnapshot-Control_2025_02_28
V8CodeFlushing-Time180Sparkplug_7
V8GCSpeedUsesCounters-Enabled
V8WasmDeoptCallIndirectInlining-DeoptAndInlining_20241204
WaitForLateScrollEvents-DispatchScrollEventsUntilDeadline_20250224
WebRTC-ForceDtls13-Enabled,_20250207
WebRTC-Video-H26xPacketBuffer-Control_20250303
ZPSPrefetchOnSRPWithAblationAndDebouncingAndroid-Enabled_ZPSPrefetchingOnSRP_Counterfactual_Debouncing_20250225
ZeroScrollMetricsUpdate-Enabled
LimitedEntropySyntheticTrial-Enabled
BackgroundThreadPoolSynthetic-Default
SyntheticStackProfilingConfiguration-DisabledModuleNotInstalled
SyntheticHeapProfilingConfiguration-Control
ChromeTPCDExperiment-a744f381
SyntheticOptimizationGuideRemoteFetching-Enabled
SyntheticModelExecutionFeatureHistorySearch-Disabled
SyncableTabGroups-Enabled
Segmentation_AdaptiveToolbar-NewTab
b100ac4-Unselected
Segmentation_IntentionalUser-IntentionalUserSegment
Segmentation_PowerUser-Medium
Segmentation_FrequentFeatureUser-FrequentFeatureUserSegment
Segmentation_DeviceTier-High
Segmentation_TabletProductivityUser-High
Segmentation_MostVisitedTilesUser-High
382b54bb-29f03e2f
Segmentation_ChromeLowUserEngagement-Unselected
Segmentation_SearchUser-High
Segmentation_FeedUserSegment-FeedUser
Segmentation_ShoppingUser-Other
Segmentation_CrossDeviceUser-CrossDeviceDesktop
Segmentation_ResumeHeavyUser-ResumeHeavyUserSegment
Segmentation_DeviceSwitcher-AndroidPhone
bc9b361d-Unselected
Segmentation_PasswordManagerUser-PasswordManagerUser
ff71bfdc-Unselected
a6fa7475-Unselected
92cfa89f-Unselected
6daa4147-Unselected
HttpsFirstModeClientSetting-Disabled
ClangPGO-EnabledWithThinLTO
DanglingPointerDetector-Disabled
MemoryTaggingBootloaderOverride-Default
MemoryTaggingDogfood-Disabled
VectorRawPtrExperiment-Disabled
TabGroup_SyncedTabGroup-Unowned
TabGroup_SharedTabGroup-Unowned
BlingSurveyLaunch-SurveysEnabled
EdgeToEdgeChinEligibility-Not Eligible
f6918184-a714ab2
dc20670d-Enabled
SkiaBackend-GL
FeedUserSettings-SignedInWaaOnDpOn
ck...@google.com <ck...@google.com> #25
There are the experiments from my Pixel 9 Pro
AdsP4-Default
AndroidFallbackToNextSlot-Default
AndroidHubSearch-Launched
AndroidPdfInline-Enabled_10_20250128
AndroidPdfInlineBackport-Default_20250128
AndroidSpareRendererCreation_V2-DefaultAfterLoading_20250220
AndroidTabDeclutter-ForcedOn_AndroidTabDeclutter
AndroidTabDeclutterDuplicateUrls-Default
AndroidUseFrameIntervalDecider-Default
AnnotatedPageContentExtraction-Default
AsyncFastCheckout-Control_20250307
AudioInputConfirmReadsViaShmem-EnabledLaunch
AutofillBetterLocalHeuristicPlaceholderSupport-Default
AutofillEnableCvcStorage-Launched_98
AutofillFixValueSemantics-Enabled_20250225
AutofillGreekRegexes-Default
AutofillI18nFRAddressModel-Default
AutofillI18nNLAddressModel-Default
AutofillIncludeUrlInCrowdsourcing-EnabledLaunch
AutofillInferLabelFromDefaultSelectText-Default
AutofillSupportPhoneticNameForJP-Default
AutofillVirtualViewStructureAndroid-Default
AutofillVoteWhenInactive-Default
BackForwardCacheForPageWithCacheControlNotStoredHeader-EnabledLaunch
BatteryStatusAndPowerSavingBroadcastReceiversInBackground-Default
BookmarksUseBinaryTreeInTitledUrlIndex-Default
BoostRenderProcessForLoading-Default
BrowserSearchGatewayTrafficMigration-Control_20250224
BusyLoopOnMainThread-Default
CCSlimming-Default
CCTNavigationalPrefetch-Default
CSSRelativeColorLateResolveAlways-Disabled_EmergencyKillSwitch
CanvasHibernationExperiments-Control_20240923
CctSignInPrompt-Noop2
ChromeChannelStable-Enabled
ClankMostVisitedTilesNewScoring-Disabled_RepeatableQueries_STABLE_20250310
ClayBlocking-Default_20250120
ClickToCapturedPointer-EnabledLaunch
CookieDeprecationFacilitatedTestingLabelOnly-LabelOnly5_20240207
CreateURLLoaderPipeAsync-Default
CustomizableSelect-Enabled_Uncontrolled_20250220
DefaultPassthroughCommandDecoder-Default_20240727
DisableCompressParkableStrings-Default
DisableGeoLanguageModel-Preperiod10
DisableListTabSwitcher-Default
EducationalTipModule-Default
EnableADPFSetThreads-EnabledLaunch
EnableImmediateDrawDuringScrollInteraction-EnabledLaunch
EnableInteractiveOnlyADPFRenderer-EnabledLaunch
EnableLazyLoadImageForInvisiblePage-Control_STABLE_2025027
EnablePixPayFlow-Default
EnableTLS13EarlyData-Default
EscapeLtGtInAttributes-Enabled_20250316
EventTimingIgnorePresentationTimeFromUnexpectedFrameSource-Default
EventTimingSelectionAutoScrollNoInteractionId-EnabledLaunch
ExpandCompositedCullRectMobile-control_20250308
ExpiredHistograms-ExpiryEnabledWithAllowlist
ExtendedReportingRemovePrefDependency-Default
ExtremeLightweightUAFDetector-Default
FeatureParamWithCache-Default
FencedFramesEnableCrossOriginAutomaticBeaconData-Preperiod_Enabled
FenderAutoPreconnectLcpOrigins-Control_20250129
FetchGaiaHashOnSignIn-EnabledLaunch
ForceSupervisedSigninWithCapabilities-Default
GCOnArrayBufferAllocationFailure-Enabled
GwpAsan2024Android-Default
HeapProfilerMobileSamplingRate-EnabledLaunch
HideTabletToolbarDownloadButtonAndroid-Default
HlsBuiltinPlayer-EnabledLaunch
HttpsFirstBalancedModeAndroid-EnabledLaunch
HttpsFirstModeV2ForTypicallySecureUsers-Default
IgnoreDuplicateNavs-Preperiod47
InitImageDecodeLastUseTime-Default
KeepAliveInBrowserMigrationHoldback-Default_20250214
LCPPDeferUnusedPreloadRequest-Default
LCPPFontURLPredictor-Default
LCPPImageLoadingPriority-Default
LCPPPrefetchSubresource-Default
LCPTimingPredictorPrerender2-Preperiod_Default
LayoutNGShapeCache-Default
LimitedEntropyUniformityStudy8pct2A-Group_1_20241017
LimitedEntropyUniformityStudy8pct2B-Group_2_20241017
LimitedEntropyUniformityStudy8pct2C-Group_2_20241017
LimitedEntropyUniformityStudy8pct2D-Group_6_20241017
LimitedEntropyUniformityStudy8pct2E-Group_2_20241017
LimitedEntropyUniformityStudy8pct2F-Group_2_20241017
LowPriorityAsyncScriptExecution-Default
MediaRecorderUseMediaVideoEncoderOnAndroid-Enabled_20250310
MetricsAndCrashSampling-OutOfReportingSample
MigrateAccountPrefs-Default
MojoMessageAlwaysUseLatestVersion-EnabledLaunch
NetworkServiceThroughputStudy-Default_20250313
NewContentForCheckerboardedScrolls-EnabledLaunch
OptimizationTargetClientSidePhishingGradualRollout-Default
OptimizationTargetGeolocationPermissionPredictionsGradualRollout-Default
OptimizationTargetNotificationPermissionPredictionsGradualRollout-Default
PartialPageZeroing-EnabledPAAndV8_20250219
PartitionAllocFewerMemoryRegions-Default
PartitionAllocMemoryTagging-Default
PartitionVisitedLinkDatabaseWithSelfLinks-EnabledWithSelfLinks_20250227
PassHistogramSharedMemoryOnLaunch-Default
PasswordFormClientsideClassifier-Default
PasswordFormGroupedAffiliations-Enabled_20241211
PostDelayedTaskFocusTab-Control_20250307
PostFREFixMetricsAndCrashSampling-OutOfReportingSample
PrefetchNewWaitLoop-EnabledLaunch
PreloadingConfig-Default_20250307
Prerender2FallbackPrefetchSpecRules-Default
PreserveDiscardableImageMapQuality-EnabledLaunch
PriceInsightsAndroid-EnabledLaunch
PrivacySandboxAdsNoticeCCT-Enabled_20250304
PrivacySandboxSentimentSurvey-Default
ProtectedAudienceDealsSupport-Default
ProtectedAudiencePreconnectCacheStudy-Default
ProtectedAudienceTrustedKVSupport-EnabledLaunch
ProtectedAudienceTrustedSignalsKVv1CreativeScanning-Default
ProtectedAudiencesKAnonymityEnforcementStudy-Enabled_20250304
QUIC-EnabledOriginFrameDec2024
RemoveSearchEngineChoiceAttribution-Control_V3
RenderDocumentWithNavigationQueueing-Default_20250311
RenderPassDrawnRect-EnabledLaunch
ResamplingScrollEvents-Default
RetainOmniboxOnFocusV2-Enabled_V4
RetroactivePreperiod-Default_Android
ReuseDetectionBasedOnPasswordHashes-EnabledLaunch
ScaleScrollbarAnimationTiming-Default
SearchEngineChoiceClearInvalidPref-Default
SearchPrefetchHighPriorityPrefetchesAndroid_WithVariousCacheSizes-Enabled_20250220
SecureTimeCertificateVerificationAndroid-EnabledLaunch
SeedFileTrial-Default
SendTabToSelfIOSPushNotifications-Launched
ServiceWorkerAutoPreload-Default
ServiceWorkerStaticRouterRaceNetworkRequestPerformanceImprovement-Default
SharingDisableVapid-EnabledLaunch
ShowWarningsForSuspiciousNotifications-Default
SimdutfBase64Support-Control_20250317
SimpleCachePrioritizedCaching-EnabledLaunch
SiteInstanceGroupsForDataUrls-Default
SkipPagehideInCommitForDSENavigation-Preperiod9
SpeculativeImageDecodes-Default
SpeculativeServiceWorkerWarmUp-Default
StaleStorageCleanup-EnabledLaunch
StandardizedTimerClamping-Default
StopExportDFCMetricsExperiment-Default
SubframeProcessReuseThresholds-Enabled512MB_Launched
SyncIncreaseSessionNudgeDelay-Default
TabSwitcherForeignFaviconSupport-Default
ThrottleFrameRateOnManyDidNotProduceFrame-Default
ThrottleMainFrameTo60Hz-Default
TimedHTMLParserBudgetForAndroid-Default
TransportSecurityFileWriterScheduleAndroid-Enabled1Minute_20250128
UKM-Enabled_20180314
UMA-LayerConstrained-Uniformity-DefaultEntropyLayer_DefaultEntropyStudy-group_00
UMA-LayerConstrained-Uniformity-LowEntropyLayer_LowEntropyStudy_WithCustomSalt-group_01
UMA-Population-Restrict-normal
UMA-Pseudo-Metrics-Effect-Injection-25-Percent-SmallEffect_22_20241105
UMA-Uniformity-Trial-0.5-Percent-1-group_45
UMA-Uniformity-Trial-0.5-Percent-2-group_35
UMA-Uniformity-Trial-1-Percent-group_75
UMA-Uniformity-Trial-10-Percent-default
UMA-Uniformity-Trial-10-Percent-sanity-group_07
UMA-Uniformity-Trial-100-Percent-group_01
UMA-Uniformity-Trial-20-Percent-group_04
UMA-Uniformity-Trial-20-Percent-Session-group_04
UMA-Uniformity-Trial-5-Percent-group_01
UMA-Uniformity-Trial-50-Percent-group_01
UkmSamplingRate-Downsampled_202309
UnoPhase2FastFollowsAndroid-Default
UseContextSnapshot-Default
UseRustJsonParserInCurrentSequenceAndroid-EnabledLaunch
V8GCSpeedUsesCounters-Default
V8MinorGcTaskWithLowerPriority-EnabledLaunch
V8SeparateGCPhases-EnabledLaunch
V8UpdateLimitAfterLoading-EnabledLaunch
V8WasmDeoptCallIndirectInlining-Default
WaitForLateScrollEvents-DispatchScrollEventsUntilDeadline_20250224Launch
LimitedEntropySyntheticTrial-Enabled
BackgroundThreadPoolSynthetic-Default
SyntheticHeapProfilingConfiguration-Default
ChromeTPCDExperiment-a744f381
SyntheticOptimizationGuideRemoteFetching-Enabled
SyntheticModelExecutionFeatureHistorySearch-Disabled
SyncableTabGroups-Enabled
Segmentation_AdaptiveToolbar-NewTab
b100ac4-Unselected
Segmentation_IntentionalUser-IntentionalUserSegment
Segmentation_PowerUser-None
Segmentation_FrequentFeatureUser-Other
Segmentation_DeviceTier-Medium
Segmentation_TabletProductivityUser-Medium
Segmentation_MostVisitedTilesUser-None
382b54bb-29f03e2f
Segmentation_ChromeLowUserEngagement-ChromeLowUserEngagement
Segmentation_SearchUser-None
Segmentation_FeedUserSegment-Other
Segmentation_ShoppingUser-ShoppingUser
Segmentation_CrossDeviceUser-NoCrossDeviceUsage
Segmentation_ResumeHeavyUser-Other
Segmentation_DeviceSwitcher-AndroidPhone
bc9b361d-Unselected
Segmentation_PasswordManagerUser-Not_PasswordManagerUser
ff71bfdc-Unselected
a6fa7475-Unselected
92cfa89f-Unselected
6daa4147-Unselected
HttpsFirstModeClientSetting-Enabled
ClangPGO-EnabledWithThinLTO
DanglingPointerDetector-Disabled
MemoryTaggingBootloaderOverride-ForceOff
MemoryTaggingDogfood-Disabled
VectorRawPtrExperiment-Disabled
TabGroup_SyncedTabGroup-Owned
TabGroup_SharedTabGroup-Unowned
SkiaBackend-Vulkan
EdgeToEdgeChinEligibility-Not Eligible
f6918184-a714ab2
FeedUserSettings-SignedInWaaOnDpOn
FollowingFeedFollowCount-1-4
dc20670d-Enabled
yf...@google.com <yf...@google.com> #26
yf...@google.com <yf...@google.com> #27
ck...@google.com <ck...@google.com> #28
I don't see any standout trends in the metric Tab.StatusWhenSwitchedBackToForeground
There are some weird spikes in Stability.Android.ProcessedCrashCounts
yf...@google.com <yf...@google.com> #29
pe...@google.com <pe...@google.com> #30
chrome://flags/#enable-render-pass-drawn-rect
Worst case we can put in an emergency finch to disable it if it is indeed the cause.
yf...@google.com <yf...@google.com> #31
ck...@google.com <ck...@google.com> #32
adb shell kill <pid>
with one of the background tab renderers does not seem to cause the issue after a few attempts and a reload is automatically triggered when returning to the tab. I think we can rule out the needs reload path being an issue unless it is more nuanced than just the process being killed.
This leaves the behavior as after some period of time (TBD) of not using a background tab (with a live renderer still) it may fail to render anything when switching it to the foreground.
ck...@google.com <ck...@google.com> #33
The restricted comment above contains a logcat just after experiencing the issue on a Pixel 9 Pro (I cannot find anything telling in the logcat). I've had no luck on a Pixel 6 with a debug build (trying a non-debug build now). Reproducing is still quite inconsistent in that I don't have a reliable trigger for it to happen. It seems to happen after returning to a tab after a moderate duration (a few minutes) and is more reliable if Chrome also got backgrounded in the interim.
It seems to happen more for "static" sites e.g. Wikipedia (mobile) and old.reddit.com/. More dynamic sites amazon.com, yahoo.com, espn.com, etc. don't seem to reproduce as readily.
After exiting the app and returning to the app (without restarting) the tab was no longer blank so something in the app pause/resume flow is also capable of "unsticking" the behavior. A reload 100% is not required to fix the issue which leads me to believe it is more likely some sort of gfx/rendering side issue.
yf...@google.com <yf...@google.com> #34
yf...@google.com <yf...@google.com> #35
bo...@chromium.org <bo...@chromium.org> #36
RenderPassDrawnRect
My hunch is that's not it. Broken "lower down in the stack" does not mean it's "graphics".
Self-freeze looks to more be "clean up before being frozen", not actually stopping timers? Though it's only a cursory look.
I have no good idea either. Trace would be more helpful.
One thing not clear from the videos is: does trying to interact with the blank page fix this? I assume probably no since no one mentioned it. Getting a trace of this interaction might be useful too.
(The wrong URL in the original report is likely due to an outdated snapshot of the toolbar. Not likely related to blank page I think, but another real bug nonetheless)
th...@google.com <th...@google.com> #37
ck...@google.com <ck...@google.com> #38
EoD update, after spending a few hours on this today I've still been unable to repro on my Pixel 6 dev device to be able to get a trace or any sort of useful logcat from when this happens. Without concrete and easily repeatable reproduction steps this is going to be difficult to root cause.
yf...@google.com <yf...@google.com> #39
Unfortunately, I don't think I had enough categories on to be useful and of course when I went back to my phoen the screen was off so when I turned it back on it was fixed.
yf...@google.com <yf...@google.com> #40
So I think this suggests something in browser logic - not attaching the right content layer (or something)
bo...@chromium.org <bo...@chromium.org> #41
it's even pushing frames
Actually... it's not
The first frame viz draws is at 00:01:15.458567344 towards the end of the trace (Search for the first Display::DrawAndSwap)
Viz did not submit a single frame before then, and afaict neither did cc, even though there looks to be lots of activity. They all got skipped with SKIPPED_REASON_WAITING_ON_MAIN. And cc is not submitting any frames because they all got skipped due to "LayerTreeHostImpl::CanDraw viz::Surface evicted and not recreated".
Not sure how it got into that state though, but can dig deeper from there.
Also, +jonross I guess
bo...@chromium.org <bo...@chromium.org> #42
So EvictionThrottlesDraw got launched a few weeks ago that's triggering the "viz::Surface evicted and not recreated" message. Gonna leave it to jonross.
ck...@google.com <ck...@google.com> #43
Recusing myself from owning this based on Bo's comments, please triage back to me if this turns out to be a browser/tabs issue or we can't make progress.
Also bumping the severity/priority (feel free to adjust further).
yf...@google.com <yf...@google.com> #44
You're right, I saw all the interprocess mechanics and assumed it was pushing :(
jo...@google.com <jo...@google.com> #45
This implies that something broke Surface Sync on tab changes. For security reasons we shouldn't display content from an Evicted Surface.
Any chance that this no longer reproduces on Canary 136.0.7079.0 ? We landed
ck...@google.com <ck...@google.com> #46
Any chance that this no longer reproduces on Canary 136.0.7079.0 ?
I've been unable to repro using ToT after spending 3-4 hours on a test device trying to repro. I'll try using M136 and later on my personal device for the next few days and report back if I get a repro or not.
jo...@google.com <jo...@google.com> #47
FrameEvictionManager
can save up to 5 Surfaces
, which is across all Renderers. So to trigger eviction you might need 6 tabs. It should try to evict the oldest first.
bo...@chromium.org <bo...@chromium.org> #48
So to trigger eviction you might need 6 tabs
Or enough OOPIFs, videos, or offscreen canvases. Presumably?
ck...@google.com <ck...@google.com> #49
Okay it seems fairly plausible it is fixed. My Pixel 9 Pro reproduces very easily (2 times in 5 minutes) after just switching between 5-10 tabs over and over again on Stable 134.6998.135. It seems 136.0.7088.2 does not repro (admittedly only after 5 min of testing).
jo...@google.com <jo...@google.com> #50
Per #48, the 5 Surfaces is shared across all of those different sources. Some users with faster repros were likely using sites that were complex enough to hit the cap earlier.
Would be glad to hear this is resolved. Though will need to take a look to see what is triggering RenderWidgetHostViewAndroid::SynchronizeVisualProperties
while evicted/hidden that is triggering the legacy throttling.
As EvictionThrottlesDraw
launched in November 2024, so I'm surprised nothing was seen until now
yf...@google.com <yf...@google.com> #51
jo...@google.com <jo...@google.com> #52
Locally I have ToT from March 24 c3f9336fdf15b689107d458f4731cb9c4210aa43 from there I reverted the suspected fix in #45 and cannot reproduce.
I can repro on Dev 136.0.7077.2 which is right before the fix. I cannot repro on Canary 136.0.7088.2 which is after the fix.
Lack of ToT repro with the fix reverted is a bit concerning, as the root cause remains unidentified
pe...@google.com <pe...@google.com>
va...@google.com <va...@google.com> #53
I am having the same issue on 16 GB MacBook Air macOS Sequoia 15.3.2 (latest) with Chrome 134.0.6998.119 (Official Build) (arm64) (latest) multiple times per day.
The interesting part is that mouse cursor reacts as though the page is there (cursor changes for links), but the page shows up as white. Switching tabs back and forth restores the page rendering back again. So does just refreshing the page. The experience feels similar as though the page was swapped out for the inactive tab and it does not get correctly swapped back in.
bo...@chromium.org <bo...@chromium.org> #54
Poking around the trace and looking at cc only.. trace shows activations are happening, so there is no reason within cc that I can see why evicted_local_surface_id_ isn't cleared. Assuming browser and viz are doing the right things.
Viz seems simple enough, just passing evict messages from browser along to cc (among other things).
Browser.. well, that logic super complicated. So one question at a time. When a RWHVA is evicted, the parent id allocator is invalidated if RWHVA is hidden (presumably the case here):
Which path is responsible for guaranteeing that a new ID is generated when RWHVA is shown? I think it would come into here:
Which goes into ScreenStateChangeHandler at which point, halp jonross?
(I think maybe I have arrived at the ~same place as jonross in #50)
bo...@chromium.org <bo...@chromium.org> #55
One interesting thing from the trace. The IPC to browser that then causes it to request begin frame is from a sub frame. This is the info that I can look up later. This is "Receive mojo reply" event at 00:01:15.441735605
blink.mojom.FrameWidgetInputHandler ipc_hash 3342590527 payload_size 40 data_num_bytes 96 mojo_interface_method.native_symbol mapping_id 0 rel_pc 45023116
3342590527 is SelectAroundCaret:
That's interesting...
That's weird..
jo...@google.com <jo...@google.com> #56
Trace in #39 is not using viz.surface_id_flow
categories. So the exact confirmation would be missing.
For #55 looking blink.mojom.FrameWidgetInputHandler
slice id [223171], in conjunction with the SelectAroundCaret
implies Browser process triggering text selection.
- In between these ipcs there is slice id [223226] which is a
STEP_DID_NOT_PRODUCE_FRAME
forSKIPPED_REASON_NO_DAMAGE
. Which is surprising with the caret request. - Just before we see
TriggerDeadlineDueToThrottling
[223217] which implies the subframe is currently throttling the main thread viaThrottleMainFrameTo60Hz
experiment.
I suspect that this is unrelated. That input is being targeted to this Renderer implies it is not evicted at this time. However since it is a subframe Viz won't be embedding it without the new parent Surface
For #54 ScreenStateChangeHandler
just resets itself. So no rotation/fullscreen batching would be happening for any upcoming Surface Syncs. We RenderWidgetHostViewAndroid::NotifyHostAndDelegateOnWasShown
so it also calls screen_state_change_handler_.Unthrottle()
So any previous changes should sync at this time. Though that only landed in 136.0.7067.0
. Though since I was reproing on 136.0.7077.2
that alone was insufficient
bo...@chromium.org <bo...@chromium.org> #57
One more thing to note: There are no ProxyImpl::ScheduledActionDraw
events. ie it did not require renderer to even submit a frame to recover. It is the browser (ie slim) compositor submitting a frame that un-wedged the whole thing.
So how did viz::Surface evicted and not recreated
get cleared in cc then? So cc should have gotten a new surface id, but then surely cc will submit a frame to the new surface at least once..?
jo...@chromium.org <jo...@chromium.org> #58
Looks like ProxyImpl::ScheduledActionDraw
is using only cc
category. Where most other scheduling tasks are cc,benchmark
. I suspect the benchmark
category was enabled, and not cc
bo...@chromium.org <bo...@chromium.org> #59
I did suspect that as well, but there are ProxyImpl::RequestBeginMainFrameNotExpectedOnImpl
events which is cc-only as well, and cr-b-enabled_categories and trace_config_pbtxt in "info and stats" shows cc.
jo...@google.com <jo...@google.com> #60
Ah I missed that.
Looking at the last instance of viz::Surface evicted and not recreated
, shortly after NeedsBeginFrames
ends. This is in the subframe.
There's one more section of NeedsBeginFrame
[242262]. During which there are 4 begin frames. However they all end with no damage for differing reasons.
So yeah we just never attempt to draw.
bo...@chromium.org <bo...@chromium.org> #61
So then is it a bug if cc doesn't guarantee it will submit a frame to a new surface? Especially we know that the old one is evicted?
And how did this case even recover..? Maybe surface 0 is evicted, cc sumitted to surface 1 before the trace started, and surface got bumped to 2, but then browser is still accepting 1?
jo...@chromium.org <jo...@chromium.org> #62
Insufficient information in the trace. Without viz.surface_id_flow
I can't be sure that the new surface id made it to the Renderer.
CC "should" always submit a frame to a new surface.
Once the Renderer has a new LocalSurfaceId
we set it during Activation
in LayerTreeHostImpl::UpdateChildLocalSurfaceId
. Which unblocks LayerTreeHostImpl::CanDraw
. After which SchedulerStateMachine::active_tree_needs_first_draw_
should be true and force drawing.
The last LayerTreeHostImpl::ActivateSyncTree
[236350] in the trace is followed by LayerTreeHostImpl::CanDraw viz::Surface evicted and not recreated
[236358]. Implying the Renderer never received the new surface
bo...@chromium.org <bo...@chromium.org> #63
Insufficient information in the trace
Yeah, definitely a lot of educated guessing here
Implying the Renderer never received the new surface
Hmm, yeah, looks to be the case. So it remains a mystery what is browser embedding that actually has renderer content..
mr...@gmail.com <mr...@gmail.com> #64
great success!
I will report back again in a week and keep monitoring this thread
jo...@chromium.org <jo...@chromium.org> #65
Thanks for validating that. This does sound like it was a duplicate of 136.0.7079.0
Description
From ""Settings > About Chrome""
Application version:Chrome Dev 135.0.6999.0
Operating system:Android 15; SM-S931B Build/AP3A.240905.015.A2
URLs (if applicable):
Steps to reproduce:
(1) close a tab
(2) go back to another older tab
(3)
Expected result: after closing newer tab and going back to old tab the content should be there
Actual result: sometimes after closing newer tab and going back to older tab, the old tab goes blank, need to reload the page for content to re appear