KhronosGroup / KhronosGroup/Vulkan-Docs
VUID-VkExportMemoryAllocateInfo-handleTypes-00656 seems unvalidatable?
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 549
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 2
Description
This VUID currently says:
> The bits in `handleTypes` **must** be supported and compatible, as reported by [VkExternalImageFormatProperties](https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkExternalImageFormatProperties.html) or [VkExternalBufferProperties](https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkExternalBufferProperties.html)
As noted in https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/5231#issuecomment-1427833705 and subsequent comments, this seems like a strange requirement that can't really be validated at the time of allocation. It depends on knowing what buffer or image the allocation will be used for, but this can't be known until the memory is actually bound to the resource. Moreover, it is possible that the memory will never be bound, and used instead for some other purpose as "raw" memory, for example via mapping. Is this an oversight in the specification? If not, how was this VUID intended?
Contributor guide
Assessment
This issue has not been assessed yet.