Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0df52bc9b273c2c6a6882b19890be6dd147e52b2
https://github.com/WebKit/WebKit/commit/0df52bc9b273c2c6a6882b19890be6dd147e52b2
Author: Miguel Gomez <[email protected]>
Date: 2024-07-26 (Fri, 26 Jul 2024)
Changed paths:
M Source/WebCore/platform/graphics/egl/GLFence.cpp
M Source/WebCore/platform/graphics/egl/GLFence.h
M Source/WebCore/platform/graphics/nicosia/NicosiaBuffer.cpp
M
Source/WebCore/platform/graphics/nicosia/NicosiaPlaceholderRenderingContextSource.cpp
M
Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp
M
Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp
M
Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.cpp
M Source/WebKit/WebProcess/WebPage/dmabuf/AcceleratedSurfaceDMABuf.cpp
Log Message:
-----------
[GTK][WPE] Use glWaitSync instead of glClientWaitSync in GLFence when possible
https://bugs.webkit.org/show_bug.cgi?id=277134
Reviewed by Carlos Garcia Campos.
We can wait for a fence to be signalled both with glClientWaitSync and
glWaitSync.
GLFence supported only the first method, which blocks the calling thread until
the
fence is signalled. In some cases it's better to use the second one to wait for
the
fence, as it doesn't block the calling thread, but the GL command exection for
the
calling context. This patch adds to GLFence the capability to wait in both ways
by
using the new serverWait() and clientWait() methods, and replaces the calls to
the
former method wait() to use the most appropriate of the new methods.
* Source/WebCore/platform/graphics/egl/GLFence.cpp:
(WebCore::GLFence::create):
(WebCore::GLFence::serverWait):
(WebCore::GLFence::clientWait):
(WebCore::GLFence::wait): Deleted.
* Source/WebCore/platform/graphics/egl/GLFence.h:
* Source/WebCore/platform/graphics/nicosia/NicosiaBuffer.cpp:
(Nicosia::AcceleratedBuffer::waitUntilPaintingComplete):
*
Source/WebCore/platform/graphics/nicosia/NicosiaPlaceholderRenderingContextSource.cpp:
(Nicosia::NicosiaPlaceholderRenderingContextSource::setPlaceholderBuffer):
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp:
(WebCore::ImageBufferSkiaAcceleratedBackend::swapBuffersIfNeeded):
* Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp:
(WebCore::TextureMapperPlatformLayerBuffer::paintToTextureMapper):
*
Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.cpp:
(WebCore::TextureMapperPlatformLayerProxyDMABuf::DMABufLayer::paintToTextureMapper):
* Source/WebKit/WebProcess/WebPage/dmabuf/AcceleratedSurfaceDMABuf.cpp:
(WebKit::AcceleratedSurfaceDMABuf::didRenderFrame):
Canonical link: https://commits.webkit.org/281396@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes