Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a6cc7410c8da359347ad1abed5a9434402697d6c
      
https://github.com/WebKit/WebKit/commit/a6cc7410c8da359347ad1abed5a9434402697d6c
  Author: Mike Wyrzykowski <[email protected]>
  Date:   2024-07-17 (Wed, 17 Jul 2024)

  Changed paths:
    A LayoutTests/fast/webgpu/nocrash/fuzz-272353-expected.txt
    A LayoutTests/fast/webgpu/nocrash/fuzz-272353.html
    M 
Source/WebCore/Modules/WebGPU/Implementation/WebGPUCompositorIntegrationImpl.cpp
    M 
Source/WebCore/Modules/WebGPU/Implementation/WebGPUPresentationContextImpl.cpp
    M 
Source/WebCore/Modules/WebGPU/Implementation/WebGPUPresentationContextImpl.h
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUPresentationContext.h
    M Source/WebGPU/WebGPU/CommandBuffer.h
    M Source/WebGPU/WebGPU/CommandBuffer.mm
    M Source/WebGPU/WebGPU/CommandEncoder.h
    M Source/WebGPU/WebGPU/CommandEncoder.mm
    M Source/WebGPU/WebGPU/PresentationContext.h
    M Source/WebGPU/WebGPU/PresentationContext.mm
    M Source/WebGPU/WebGPU/PresentationContextIOSurface.h
    M Source/WebGPU/WebGPU/PresentationContextIOSurface.mm
    M Source/WebGPU/WebGPU/Texture.h
    M Source/WebGPU/WebGPU/Texture.mm
    M Source/WebGPU/WebGPU/WebGPUExt.h
    M 
Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemotePresentationContextProxy.cpp
    M 
Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemotePresentationContextProxy.h

  Log Message:
  -----------
  [WebGPU] Remove semaphore in CommandBuffer::waitForCompletion
https://bugs.webkit.org/show_bug.cgi?id=272353
<radar://131621394>

Reviewed by Tadeu Zagallo.

There was no need to use a semaphore and block the thread, this can be done
asynchronously.

* 
Source/WebCore/Modules/WebGPU/Implementation/WebGPUCompositorIntegrationImpl.cpp:
(WebCore::WebGPU::CompositorIntegrationImpl::withDisplayBufferAsNativeImage):
* 
Source/WebCore/Modules/WebGPU/Implementation/WebGPUPresentationContextImpl.cpp:
(WebCore::WebGPU::PresentationContextImpl::getMetalTextureAsNativeImage):
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUPresentationContextImpl.h:
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUPresentationContext.h:
* Source/WebGPU/WebGPU/CommandBuffer.h:
* Source/WebGPU/WebGPU/CommandBuffer.mm:
(WebGPU::CommandBuffer::makeInvalidDueToCommit):
(WebGPU::CommandBuffer::onCompletion):
(WebGPU::CommandBuffer::waitForCompletion): Deleted.
* Source/WebGPU/WebGPU/CommandEncoder.h:
* Source/WebGPU/WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::onCommandBufferCompletion):
(WebGPU::CommandEncoder::waitForCommandBufferCompletion): Deleted.
* Source/WebGPU/WebGPU/PresentationContext.h:
(WebGPU::PresentationContext::getTextureAsNativeImage):
* Source/WebGPU/WebGPU/PresentationContext.mm:
(wgpuSwapChainGetTextureAsNativeImage):
* Source/WebGPU/WebGPU/PresentationContextIOSurface.h:
* Source/WebGPU/WebGPU/PresentationContextIOSurface.mm:
(WebGPU::PresentationContextIOSurface::getTextureAsNativeImage):
* Source/WebGPU/WebGPU/Texture.h:
* Source/WebGPU/WebGPU/Texture.mm:
(WebGPU::Texture::onCommandBufferCompletion):
(WebGPU::Texture::waitForCommandBufferCompletion): Deleted.
* Source/WebGPU/WebGPU/WebGPUExt.h:
* 
Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemotePresentationContextProxy.cpp:
(WebKit::WebGPU::RemotePresentationContextProxy::getMetalTextureAsNativeImage):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemotePresentationContextProxy.h:

* LayoutTests/fast/webgpu/nocrash/fuzz-272353-expected.txt: Added.
* LayoutTests/fast/webgpu/nocrash/fuzz-272353.html: Added.
Add regression test.

Canonical link: https://commits.webkit.org/281071@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

Reply via email to