[Webkit-unassigned] [Bug 228969] New: [GPU Process] REGRESSION: iCloud Photos Web app may release resources after GPUProcess is relaunched

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Aug 10 14:12:42 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=228969

            Bug ID: 228969
           Summary: [GPU Process] REGRESSION: iCloud Photos Web app may
                    release resources after GPUProcess is relaunched
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Canvas
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: sabouhallawa at apple.com
                CC: dino at apple.com

This will cause the WebProcess to be terminated. It is a remaining work of bug 228665.

Right now these call stacks are possible and all of them are wrong. All of them call RemoteRenderingBackendProxy::releaseRemoteResource() while the GPUP is terminated and is being relaunched:

NativeImage:

WebKit::RemoteRenderingBackendProxy::releaseRemoteResource(WTF::ObjectIdentifier<WebCore::RenderingResourceIdentifierType>, unsigned long long)
WebKit::RemoteResourceCacheProxy::releaseNativeImage(WTF::ObjectIdentifier<WebCore::RenderingResourceIdentifierType>)
WebCore::NativeImage::~NativeImage()
WebCore::DisplayList::DisplayList::clear()
WebCore::DisplayList::ImageBuffer<WebKit::ImageBufferShareableMappedIOSurfaceBackend>::clearBackend()
WebKit::RemoteResourceCacheProxy::remoteResourceCacheWasDestroyed()
WebKit::RemoteRenderingBackendProxy::gpuProcessConnectionDidClose(WebKit::GPUProcessConnection&)
WebKit::GPUProcessConnection::didClose(IPC::Connection&)
WTF::Detail::CallableWrapper<IPC::Connection::connectionDidClose()::$_8, void>::call()

ImageBuffer:

WebKit::RemoteRenderingBackendProxy::releaseRemoteResource(WTF::ObjectIdentifier<WebCore::RenderingResourceIdentifierType>, unsigned long long)
WebKit::RemoteResourceCacheProxy::releaseImageBuffer(WTF::ObjectIdentifier<WebCore::RenderingResourceIdentifierType>)
WebKit::RemoteImageBufferProxy<WebKit::ImageBufferShareableMappedIOSurfaceBackend>::~RemoteImageBufferProxy()
WebKit::RemoteImageBufferProxy<WebKit::ImageBufferShareableMappedIOSurfaceBackend>::~RemoteImageBufferProxy()
WebCore::DisplayList::DisplayList::clear()
WebCore::DisplayList::ImageBuffer<WebKit::ImageBufferShareableMappedIOSurfaceBackend>::clearBackend()
WebKit::RemoteResourceCacheProxy::remoteResourceCacheWasDestroyed()
WebKit::RemoteRenderingBackendProxy::gpuProcessConnectionDidClose(WebKit::GPUProcessConnection&)
WebKit::GPUProcessConnection::didClose(IPC::Connection&)
WTF::Detail::CallableWrapper<IPC::Connection::connectionDidClose()::$_8, void>::call()

Font:

WebKit::RemoteRenderingBackendProxy::releaseRemoteResource(WTF::ObjectIdentifier<WebCore::RenderingResourceIdentifierType>, unsigned long long)
WebKit::RemoteResourceCacheProxy::clearFontMap()
WebKit::RemoteResourceCacheProxy::remoteResourceCacheWasDestroyed()
WebKit::RemoteRenderingBackendProxy::gpuProcessConnectionDidClose(WebKit::GPUProcessConnection&)
WebKit::GPUProcessConnection::didClose(IPC::Connection&)
WTF::Detail::CallableWrapper<IPC::Connection::connectionDidClose()::$_8, void>::call()

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210810/e7cfb00d/attachment.htm>


More information about the webkit-unassigned mailing list