[webkit-changes] [WebKit/WebKit] d4f338: [WebGPU] GPURenderPipeline can surprisingly be gar...

mwyrzykowski noreply at github.com
Thu Jun 6 23:25:06 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d4f3388e87ebc7b5a89352a0a80446ade8249bec
      https://github.com/WebKit/WebKit/commit/d4f3388e87ebc7b5a89352a0a80446ade8249bec
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2024-06-06 (Thu, 06 Jun 2024)

  Changed paths:
    A LayoutTests/fast/webgpu/regression/repro_275194-expected.txt
    A LayoutTests/fast/webgpu/regression/repro_275194.html
    A LayoutTests/fast/webgpu/regression/repro_275194b-expected.txt
    A LayoutTests/fast/webgpu/regression/repro_275194b.html
    M Source/WebGPU/WebGPU/ComputePassEncoder.h
    M Source/WebGPU/WebGPU/RenderBundleEncoder.h
    M Source/WebGPU/WebGPU/RenderPassEncoder.h

  Log Message:
  -----------
  [WebGPU] GPURenderPipeline can surprisingly be garbage collected
https://bugs.webkit.org/show_bug.cgi?id=275194
<radar://129271876>

Reviewed by Dan Glastonbury.

We should hold a RefPtr and not a WeakPtr since a GC which occurs in the middle
of an encoder can result in the pipeline's ref count reaching zero.

There is not a risk of a retain cycle as the *Encoders are not retained by
any other objects.

* LayoutTests/fast/webgpu/regression/repro_275194-expected.txt: Added.
* LayoutTests/fast/webgpu/regression/repro_275194.html: Added.
* LayoutTests/fast/webgpu/regression/repro_275194b-expected.txt: Added.
* LayoutTests/fast/webgpu/regression/repro_275194b.html: Added.
Add regression test.

* Source/WebGPU/WebGPU/ComputePassEncoder.h:
* Source/WebGPU/WebGPU/RenderBundleEncoder.h:
* Source/WebGPU/WebGPU/RenderPassEncoder.h:

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list