[webkit-reviews] review granted: [Bug 222546] WebGL asserts after GPU process times out : [Attachment 422269] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Mar 5 14:43:37 PST 2021


Wenson Hsieh <wenson_hsieh at apple.com> has granted Kimmo Kinnunen
<kkinnunen at apple.com>'s request for review:
Bug 222546: WebGL asserts after GPU process times out
https://bugs.webkit.org/show_bug.cgi?id=222546

Attachment 422269: Patch

https://bugs.webkit.org/attachment.cgi?id=422269&action=review




--- Comment #6 from Wenson Hsieh <wenson_hsieh at apple.com> ---
Comment on attachment 422269
  --> https://bugs.webkit.org/attachment.cgi?id=422269
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=422269&action=review

> Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:-364
> -    bool found =
m_remoteGraphicsContextGLMap.remove(graphicsContextGLIdentifier);
> -    ASSERT_UNUSED(found, found);

Not new to this patch, but I wonder if we ought to `MESSAGE_CHECK` the incoming
`graphicsContextGLIdentifier`. (The same comment seems to apply to
`RemoteRenderingBackend` as well).

> Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:369
> +    releaseGraphicsContextGL(identifier);

(Ditto)

> Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:265
> +	       if (auto connectionToWeb = gpuConnectionToWebProcess.get())

`if (auto connectionToWeb = makeRefPtr(gpuConnectionToWebProcess.get()))`?

> Source/WebKit/Platform/IPC/StreamClientConnection.h:174
> +    // Since the value is trusted, we only assert.
> +    ASSERT(clientLimit != ClientLimit::clientIsWaitingTag);

This seems like a good opportunity for a MESSAGE_CHECK as well.

> Source/WebKit/Platform/IPC/StreamServerConnection.cpp:129
> +    return std::min(limit, dataSize() - 1);

It seems like this could be made more robust to underflow (i.e. the `dataSize()
- 1`).


More information about the webkit-reviews mailing list