commit | 20a6ca0041379a0aebeca7fdff753416a4ab1ffa | [log] [tgz] |
---|---|---|
author | Corentin Wallez <cwallez@chromium.org> | Mon Dec 19 11:14:54 2022 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Dec 19 11:14:54 2022 +0000 |
tree | 9391add8dddcf84a9b4a4809ba4fc90bf824514d | |
parent | ad541a7cdd92c10cfb5433440a5783e492d3f032 [diff] |
generator_lib.py: Fix exception when racing for dir creation. The generator_lib.py processing of file renders would check that the output directory doesn't exist and if needed, would create it. However by default makedirs errors if the path already exists. This caused issues when multiple generator_lib.py generators with the same output dir would run in parallel in builds, because there can be a race where: - GeneratorA: Check os.path.exists -> returns False - GeneratorB: Check os.path.exists -> returns False - GeneratorB: os.makedirs -> Ok - GeneratorA: os.makedirs -> Exception, fails the build. Instead use os.makedirs(exist_ok=True) inconditionally to remove this racy behavior. Bug: None Change-Id: I5cb401a1df11a3640faeea94c15cb54236edc05a Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/114521 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com> 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.