commit | 18f45d0373057395c9875b455035ef19ca6a655c | [log] [tgz] |
---|---|---|
author | Kai Ninomiya <kainino@chromium.org> | Tue Feb 18 13:35:25 2025 -0800 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Feb 18 13:35:25 2025 -0800 |
tree | 9dfaf0a2b2c47ed6b72361254dc1e21cd09ffae4 | |
parent | 9ced21150942107e67919ed591b50935835ffd00 [diff] |
dawn::DynamicLib: Leak all DLLs on Windows ASan builds Loading the same DLL more than once does not work on Windows ASan builds. (I don't know if this is clang-only or all compilers, so I just do it for all compilers.) According to amaiorano: > By never unloading DLLs, future loads will just increase process ref > count for that DLL. I think the reason this fixes both issues: > > 1. DXC DLL is loaded the first time, then never unloaded, so future > attempts to load it are no-ops (apart from ref count going up). > 2. OpenGLES DLL is loaded the first time, which loads dependent DLLs > like libc++, and never unloaded, so again, future attempts to load > it are no-ops. Formerly, when OpenGLES DLL was unloaded, it would > likely unload the libc++ DLL as well, which is why a future attempt > to load resulted in an ASAN failure. This issue can be reproduced dawn-try-win10-x64-intel-asan and dawn-try-win10-x64-nvidia-asan, but using "Cq-Include-Trybots" doesn't work ("the following builders are included but not defined in the LUCI project"), so I've run them manually. Fixed: 392929847 Bug: 347169607 Change-Id: I2c1181969693994b97d3a40bd76364307d2b1b43 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/223901 Reviewed-by: Antonio Maiorano <amaiorano@google.com> Commit-Queue: Kai Ninomiya <kainino@chromium.org>
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.