[vulkan] Add workaround for UAF in DestroyDescriptorPool. - As per the bug and the related internal Android issue, this works around a temporary issue in the IMG driver that causes a UAF when we attempt to call AllocateDescriptorSets and run into an OOM. - The more "proper" fix would probably be to implement suballocations, but since that is a much larger effort, this is a band-aid fix to avoid the UAF issue for now. - Note that since the error that is generated is an internal error, this eventually leads to a device loss so it is acceptable to skip the Destroy call in this case since even if it would lead to a leak, it cannot propagate further. Bug: 549311485 Change-Id: I8c951e879bb405943698c179962275687e828168 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/334695 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.