radv: ignore registering pipeline libaries with SQTT
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Fri, 10 Feb 2023 09:33:28 +0000 (10:33 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 14 Feb 2023 15:03:45 +0000 (15:03 +0000)
They aren't executable pipelines and they might not contain all
shader stages.

This fixes a crash when generating RGP captures with GPL.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21235>

src/amd/vulkan/layers/radv_sqtt_layer.c

index b3130d1..079cce6 100644 (file)
@@ -1278,6 +1278,9 @@ sqtt_CreateGraphicsPipelines(VkDevice _device, VkPipelineCache pipelineCache, ui
       if (!pipeline)
          continue;
 
+      if (pCreateInfos[i].flags & VK_PIPELINE_CREATE_LIBRARY_BIT_KHR)
+         continue;
+
       result = radv_sqtt_reloc_graphics_shaders(device, radv_pipeline_to_graphics(pipeline));
       if (result != VK_SUCCESS)
          goto fail;