KhronosGroup / KhronosGroup/Vulkan-ValidationLayers

Add Descriptor Heap/Hashing tests for AS

Open
#12,702 1 comment 0 reactions 1 assignee View on GitHub

@arno-lunarg is already working on this.

Since Jul 13, 2026.

GPU-AV
Dominant language
C++
Stars
1k
Forks
505
Avg merge
11h 25m
Merged PRs (30d)
229

Description

  1. Apply this change (it honestly should work, I block SHADER_RECORD elsewhere)
diff --git a/layers/gpuav/spirv/descriptor_buffer_pass.cpp b/layers/gpuav/spirv/descriptor_buffer_pass.cpp
index 46dda06d5..d24248aa2 100644
--- a/layers/gpuav/spirv/descriptor_buffer_pass.cpp
+++ b/layers/gpuav/spirv/descriptor_buffer_pass.cpp
@@ -76,9 +76,6 @@ bool DescriptorBufferPass::RequiresInstrumentation(const Function& function, con
     if (!meta.access_path.IsValid() || !meta.access_path.variable->IsDescriptor()) {
         return false;
     }
-    if (meta.access_path.descriptor_type == VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR) {
-        return false;  // not supported yet
-    }
     if (meta.access_path.descriptor_type == VK_DESCRIPTOR_TYPE_SAMPLER ||
         meta.access_path.descriptor_type == VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER) {
         // Need to be cautious of Embedded Samplers as well when adding support
diff --git a/layers/gpuav/spirv/descriptor_heap_pass.cpp b/layers/gpuav/spirv/descriptor_heap_pass.cpp
index 3e1970355..f5d7a2456 100644
--- a/layers/gpuav/spirv/descriptor_heap_pass.cpp
+++ b/layers/gpuav/spirv/descriptor_heap_pass.cpp
@@ -556,9 +556,6 @@ bool DescriptorHeapPass::RequiresInstrumentation(const Function& function, const
     if (!meta.access_path.IsValid() || !meta.access_path.variable->IsDescriptor()) {
         return false;
     }
-    if (meta.access_path.descriptor_type == VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR) {
-        return false;  // not supported yet
-    }
 
     // We look for mappings here incase we can't find it, we can skip safely
     meta.mapping_index_resource = GetMapping(meta.access_path, false);
  1. Create some tests verifying it works
  • A Negative GPU-AV Heap test that tries to access the AS OOB of the descriptor heap
  • A Negative GPU-AV Heap test that tries to access the AS not aligned to bufferDescriptorAlignment
  • A Negative GPU-AV Heap test with "descriptor_hashing" on that just never puts anything the heap and tries to access it

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.