[webkit-changes] [WebKit/WebKit] 21e320: [WebGPU] RenderBundleEncoder::endCurrentICB may as...

mwyrzykowski noreply at github.com
Mon May 20 09:57:33 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 21e320d6fce2f9d38872472d1cfb2eddc9acd67d
      https://github.com/WebKit/WebKit/commit/21e320d6fce2f9d38872472d1cfb2eddc9acd67d
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2024-05-20 (Mon, 20 May 2024)

  Changed paths:
    M LayoutTests/TestExpectations
    A LayoutTests/fast/webgpu/fuzz-274271-expected.txt
    A LayoutTests/fast/webgpu/fuzz-274271.html
    M Source/WebGPU/WebGPU/RenderBundleEncoder.h
    M Source/WebGPU/WebGPU/RenderBundleEncoder.mm

  Log Message:
  -----------
  [WebGPU] RenderBundleEncoder::endCurrentICB may assert in ASAN builds on invalid bundle encoder
https://bugs.webkit.org/show_bug.cgi?id=274271
<radar://128064942>

Reviewed by Dan Glastonbury.

There is an ASAN assert in Vector::grow(sz) to ensure sz >= the current size,
which will not be true when replaying commands from an invalid RenderBundleEncoder.

But we shouldn't replay commands from an invalid RenderBundleEncoder in the first place,
so return early if the encoder is invalid.

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

* Source/WebGPU/WebGPU/RenderBundleEncoder.h:
(WebGPU::RenderBundleEncoder::isValid const): Deleted.
* Source/WebGPU/WebGPU/RenderBundleEncoder.mm:
(WebGPU::RenderBundleEncoder::endCurrentICB):
(WebGPU::RenderBundleEncoder::isValid const):
(WebGPU::RenderBundleEncoder::replayCommands):

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