| Summary: | [GPU Process] Closing the GPU Process should clean all the back pointers from ItemBuffer to RemoteRenderingBackendProxy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Kimmo Kinnunen <kkinnunen> | ||||||
| Component: | Canvas | Assignee: | Said Abou-Hallawa <sabouhallawa> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | dino, rniwa, sabouhallawa, simon.fraser, thorton, webkit-bug-importer, wenson_hsieh | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
|
Description
Kimmo Kinnunen
2021-04-19 02:42:06 PDT
The rdar link is wrong. As said: First ASSERT is for GPU process crash. <rdar://76286963> Second ASSERT is for this bug, WebContent process crash. Removing InRadar keyword so that this get re-imported. Created attachment 427932 [details]
Patch
Comment on attachment 427932 [details]
Patch
Maybe separately these should all be WeakPtr-y things?
Comment on attachment 427932 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=427932&action=review > Source/WebCore/platform/graphics/displaylists/DisplayListImageBuffer.h:95 > + m_drawingContext.recorder().clearDelegate(); > + > + m_drawingContext.displayList().setItemBufferWritingClient(nullptr); > + m_drawingContext.displayList().setItemBufferReadingClient(nullptr); These lines caused the API test GPUProcess.CanvasBasicCrashHandling to fail. They should not be here because the RemoteRenderingBackendProxy will try to recreate the backend of the RemoteImageBufferProxy after it calls clearBackend(). Once it's recreated the DisplayList::Recorder will need the delegate and the DisplayList::DisplayList will need the writing client to create new ItemBufferHandles. So these pointers should stay as they are since they are always valid. They point to the RemoteRenderingBackendProxy and the RemoteRenderingBackendProxy owns the DisplayList and its Recorder. Created attachment 427957 [details]
Patch
Committed r277162 (237448@main): <https://commits.webkit.org/237448@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 427957 [details]. |