[webkit-reviews] review granted: [Bug 231970] RemoteRenderingBackend::CreateImageBuffer should be an async IPC stream message : [Attachment 441970] Alternate approach, #2
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Oct 21 00:07:22 PDT 2021
Kimmo Kinnunen <kkinnunen at apple.com> has granted review:
Bug 231970: RemoteRenderingBackend::CreateImageBuffer should be an async IPC
stream message
https://bugs.webkit.org/show_bug.cgi?id=231970
Attachment 441970: Alternate approach, #2
https://bugs.webkit.org/attachment.cgi?id=441970&action=review
--- Comment #11 from Kimmo Kinnunen <kkinnunen at apple.com> ---
Comment on attachment 441970
--> https://bugs.webkit.org/attachment.cgi?id=441970
Alternate approach, #2
View in context: https://bugs.webkit.org/attachment.cgi?id=441970&action=review
Nice!
> Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp:95
> +
m_streamConnection->startReceivingMessages(Messages::RemoteDisplayListRecorder:
:messageReceiverName());
So I remember this after two weeks, could you add a comment about the
subtleness?
I can come up with something like below, but feel free to word it differently
too.
// RemoteDisplayListRecorder messages depend on RemoteRenderingBackend, because
RemoteRenderingBackend creates RemoteDisplayListRecorder and
// makes a receive queue for it. In order to guarantee correct ordering, ensure
that all RemoteDisplayListRecorder messages are processed in the same sequence
// as RemoteRenderingBackend.
> Source/WebKit/Platform/IPC/StreamServerConnection.cpp:43
> + // FIXME: Can we avoid synchronous dispatch here by adjusting the
assertion in `Connection::enqueueMatchingMessagesToMessageReceiveQueue`?
Yeah, this should be done, along with fixing m_workQueue.addStreamConnection to
be thread-safe.
More information about the webkit-reviews
mailing list