[webkit-changes] [WebKit/WebKit] 61a2ca: RemoteGraphicsContextGL accesses work queue in inc...

Kimmo Kinnunen noreply at github.com
Tue Jan 10 00:24:17 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 61a2cad10a14f830ea46cb5819fa798b834cbe35
      https://github.com/WebKit/WebKit/commit/61a2cad10a14f830ea46cb5819fa798b834cbe35
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2023-01-10 (Tue, 10 Jan 2023)

  Changed paths:
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h

  Log Message:
  -----------
  RemoteGraphicsContextGL accesses work queue in inconsistent manner
https://bugs.webkit.org/show_bug.cgi?id=249768
rdar://103634573

Reviewed by Matt Woodrow.

Make RemoteGraphicsContextGL more consistent by using workQueue() everywhere to
access the queue.

Initialize the shared work queue in thread-safe manner, even though currently it's
not initialized from multiple threads.

Store the work queue reference as a member variable to avoid querying the global
variable with the implicit static variable locks.

* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp:
(WebKit::remoteGraphicsContextGLStreamWorkQueue):
(WebKit::RemoteGraphicsContextGL::RemoteGraphicsContextGL):
(WebKit::RemoteGraphicsContextGL::initialize):
(WebKit::RemoteGraphicsContextGL::stopListeningForIPC):
(WebKit::RemoteGraphicsContextGL::displayWasReconfigured):
(WebKit::RemoteGraphicsContextGL::workQueueInitialize):
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h:
(WebKit::RemoteGraphicsContextGL::workQueue const):

Canonical link: https://commits.webkit.org/258705@main




More information about the webkit-changes mailing list