commit | 7f8c91cddeba24c993c7dfcc04171fc36e940a0b | [log] [tgz] |
---|---|---|
author | Aleksi Sapon <aleksi.sapon@builditsoftware.com> | Tue Mar 30 13:06:17 2021 +0000 |
committer | Commit Bot service account <commit-bot@chromium.org> | Tue Mar 30 13:06:17 2021 +0000 |
tree | 8cd5cd1471ba4acc2e044739e9064c1c1fcd8b61 | |
parent | 98028718e14f0bf71e35f8b54f5d926e5fd298b7 [diff] |
Fix crash from async callback calling Queue::Submit An async callback which calls Queue::Submit will cause reentrance in QueueBase::Tick and CreatePipelineAsyncTracker::Tick, which invalidates the task queue being used by the original call, and leads to a crash from an invalid pointer. The Tick functions should remove the tasks from the queues before the callbacks are called, so invalidation doesn't cause a crash. Bug: dawn:729 Change-Id: I0d952d51040a3d1a475767400de3333a8b9b0821 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/45900 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org>
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.