Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e97b0792a67c3bc32d69a2f6cc61d350f629402c
https://github.com/WebKit/WebKit/commit/e97b0792a67c3bc32d69a2f6cc61d350f629402c
Author: Simon Fraser <[email protected]>
Date: 2023-06-22 (Thu, 22 Jun 2023)
Changed paths:
M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h
Log Message:
-----------
Lazily allocate the SharedVideoFrameWriter in RemoteDisplayListRecorderProxy
https://bugs.webkit.org/show_bug.cgi?id=258379
rdar://111133625
Reviewed by Youenn Fablet.
Every RemoteImageBufferProxy has a RemoteDisplayListRecorderProxy, and every
RemoteDisplayListRecorderProxy has
a SharedVideoFrameWriter, which owns an IPC::Semaphore. The creation and
destruction time for this semaphore
was significant when creating/destroying ImageBuffers.
Since SharedVideoFrameWriter is only rarely used, in the case where video
frames are drawing into a buffer,
we can lazily allocate it.
* Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
(WebKit::RemoteDisplayListRecorderProxy::recordPaintVideoFrame):
(WebKit::RemoteDisplayListRecorderProxy::disconnect):
(WebKit::RemoteDisplayListRecorderProxy::ensureSharedVideoFrameWriter):
* Source/WebKit/WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
Canonical link: https://commits.webkit.org/265427@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes