commit | 03199c2b44b74c69351228297308319a8e70afed | [log] [tgz] |
---|---|---|
author | Corentin Wallez <cwallez@chromium.org> | Mon Sep 26 11:13:35 2022 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Sep 26 11:13:35 2022 +0000 |
tree | 0316ff85420f5f2b107e28ca6e61388cd0ef034a | |
parent | ab882c17a5de8a99f1382911fee0de9c51ae8203 [diff] |
Protect against aspectReadOnly of unused DS attachements aspects Unused aspects of depth-stencil attachments that are tagged as read-only used to leak that read-only state to backends, even if the validation made it seems like they always match (they only need to match if the texture has both aspects). This confused backends like Vulkan which checked for depthReadOnly || stencilReadOnly to choose between code paths. Instead reyify the depthStencilAttachement descriptor in the frontend to protect against garbage values being passed for aspects that aren't present in the texture. Adds a regression test, with the caveat that a failure is only shown by having the VVL output and error in stderr due to an unrelated issue. Fixed: dawn:1512 Change-Id: I35d5581e46909b7f41ff4c7553d60c6ac844a56b Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/101121 Reviewed-by: Loko Kung <lokokung@google.com> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com>
Dawn is an open-source and cross-platform implementation of the work-in-progress WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.