Bug 265295

Summary: Speedometer 3: Sync wait in RemoteLayerWithRemoteRenderingBackingStoreCollection::prepareBackingStoresForDisplay
Product: WebKit Reporter: Matt Woodrow <mattwoodrow>
Component: Layout and RenderingAssignee: Matt Woodrow <mattwoodrow>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, Hironori.Fujii, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Matt Woodrow 2023-11-23 16:56:17 PST
Having a synchronous call to prepareBackingStoresForDisplay blocks the main thread, while the GPU Process existing commands (like canvas drawing from rAF).

We should be able to avoid this in the common case, and just asynchronously let the GPU know that we're starting layer drawing for a frame.


<rdar://116792212>
Comment 1 Matt Woodrow 2023-11-23 16:58:19 PST
Pull request: https://github.com/WebKit/WebKit/pull/20858
Comment 2 EWS 2023-12-08 11:20:43 PST
Committed 271747@main (3dd074a9e5d2): <https://commits.webkit.org/271747@main>

Reviewed commits have been landed. Closing PR #20858 and removing active labels.
Comment 3 Fujii Hironori 2023-12-09 00:54:17 PST
Windows port regressed.
  Bug 266138 – REGRESSION(271747@main): [Win] ASSERTION FAILED: canSafelyBeUsed() under WebKit::RemoteImageBufferProxy::streamConnection