Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c09f42b5726d882adb25576503b6a3c1415f4b77
https://github.com/WebKit/WebKit/commit/c09f42b5726d882adb25576503b6a3c1415f4b77
Author: Carlos Garcia Campos <[email protected]>
Date: 2025-11-06 (Thu, 06 Nov 2025)
Changed paths:
M
Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedPlatformLayerBufferProxy.cpp
Log Message:
-----------
[CoordinatedGraphics] Fix deadlock when media thread is trying to push a
buffer while main thread is flushing layers
https://bugs.webkit.org/show_bug.cgi?id=302068
Reviewed by Nikolas Zimmermann.
During the layer flush the CoordinatedPlatformLayer lock is held and
CoordinatedPlatformLayerBufferProxy::setDisplayBuffer needs to take the
lock to push the new buffer too.
CoordinatedPlatformLayerBufferProxy::consumePendingBufferIfNeeded(),
called during layer flush from main thread waits on the proxy lock that
is held by CoordinatedPlatformLayerBufferProxy::setDisplayBuffer which
is waiting for the CoordinatedPlatformLayer lock. We need to release the
proxy lock before taking the layer's one.
Canonical link: https://commits.webkit.org/302647@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications