| commit | f7cc1cc01539da2252814f00f9437998061c6921 | [log] [tgz] |
|---|---|---|
| author | Lokbondo Kung <lokokung@google.com> | Tue Jul 08 11:11:10 2025 -0700 |
| committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Jul 08 11:11:10 2025 -0700 |
| tree | e058cd33967de47926f5910c95adc8b61e376b97 | |
| parent | d7b31b22748daa067438d2af32f847057b85b3de [diff] |
[dawn][native] Fixes TSAN race for new the Defer in DeviceGuard. - Skia TSAN found that there can be a race since we were null-ing out the Defer object without the device lock. Instead of doing without the lock, make Defer movable and move the Device Defer to be owned by he guard while still holding the lock. This way we don't have the potential race where another thread tries to set the Defer object while another thread is in the middle of deleting it. Bug: 430047923 Include-Ci-Only-Tests: true Change-Id: I112af3a3a3e6eb0cc1802f415277bd6e12504a78 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/251215 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Loko Kung <lokokung@google.com>
Dawn is an open-source and cross-platform implementation of the 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)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.