mesa/src/vulkan/runtime
Friedrich Vock 8ffdad731c vulkan: Don't use set_foreach_remove when destroying pipeline caches
set_foreach_remove assumes no entries have been removed. That assumption
only holds if no errors occur, since pipeline cache objects can get
removed if an error occurs during deserialization.

This fixes
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail.basic
crashing on RADV.

Cc: mesa-stable
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26164>
2023-11-13 20:09:31 +00:00
..
rmv vulkan/rmv,radv: Use common trace trigger 2023-06-27 06:25:56 +00:00
meson.build compiler,vulkan,drm-shim: Remove unused include directories from meson.build 2023-10-27 01:35:10 +00:00
vk_acceleration_structure.c vulkan: Add vk_acceleration_structure 2023-02-22 11:58:57 +00:00
vk_acceleration_structure.h vulkan: Add vk_acceleration_structure 2023-02-22 11:58:57 +00:00
vk_android.c vulkan/android: drop vk_buffer dependency from common AHB impl 2023-09-18 19:25:59 +00:00
vk_android.h vulkan: add vk_image_format_to_ahb_format 2023-05-11 22:18:03 +00:00
vk_blend.c vulkan: Add helpers for blend enum translation 2023-07-13 21:03:32 +00:00
vk_blend.h vulkan: Add helpers for blend enum translation 2023-07-13 21:03:32 +00:00
vk_buffer.c vulkan: Use VkBufferUsageFlags2 in vk_buffer 2023-08-04 16:03:16 +00:00
vk_buffer.h vulkan: Use VkBufferUsageFlags2 in vk_buffer 2023-08-04 16:03:16 +00:00
vk_buffer_view.c vulkan: add init/finish helpers for vk_buffer_view 2023-08-08 10:24:54 +00:00
vk_buffer_view.h vulkan: add init/finish helpers for vk_buffer_view 2023-08-08 10:24:54 +00:00
vk_cmd_copy.c vulkan/runtime: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
vk_cmd_enqueue.c vulkan Add enqueue entrypoint for CmdDispatchGraphAMDX 2023-08-18 16:57:22 +00:00
vk_command_buffer.c vulkan/meta: Add an object tracking list 2023-08-04 21:31:57 +00:00
vk_command_buffer.h docs/vulkan: use hawkmoth instead of doxygen 2023-10-26 16:13:26 +00:00
vk_command_pool.c vulkan: Recycle command buffers in vk_command_pool 2022-09-01 20:17:25 +00:00
vk_command_pool.h docs/vulkan: use hawkmoth instead of doxygen 2023-10-26 16:13:26 +00:00
vk_debug_report.c vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_debug_report.h
vk_debug_utils.c vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_debug_utils.h
vk_deferred_operation.c
vk_deferred_operation.h
vk_descriptor_set_layout.c vk/descriptor_set_layout: Add optional destructor 2022-12-12 17:38:19 +00:00
vk_descriptor_set_layout.h vk/descriptor_set_layout: Add optional destructor 2022-12-12 17:38:19 +00:00
vk_descriptor_update_template.c vulkan/runtime: Compact descriptor update templates 2022-09-17 03:32:29 +00:00
vk_descriptor_update_template.h vulkan/runtime: Add a comon vk_descriptor_update_template 2022-09-17 03:32:29 +00:00
vk_descriptors.c tu,vulkan: Add common Get*OpaqueCaptureDescriptorDataEXT 2023-02-13 07:43:11 +00:00
vk_descriptors.h vulkan: prefer vulkan_core.h over vulkan.h 2023-02-15 18:35:14 +00:00
vk_device.c vulkan: Remove vk_get_physical_device_core_1_*_feature_ext 2023-09-27 23:02:29 +00:00
vk_device.h docs/vulkan: use hawkmoth instead of doxygen 2023-10-26 16:13:26 +00:00
vk_device_memory.c vulkan/runtime: change assert to match specification needs 2023-08-17 08:36:15 +00:00
vk_device_memory.h vulkan: Add a vk_device_memory base struct 2023-03-31 14:57:03 +00:00
vk_drm_syncobj.c vulkan/drm_syncobj: Implement WAIT_PENDING with a sync_file lookup 2022-04-13 17:22:14 +00:00
vk_drm_syncobj.h
vk_fence.c vulkan: Add CPU tracing for vkWaitForFences. 2023-08-19 23:10:37 +02:00
vk_fence.h vulkan: Replace _Alignas with alignas 2022-11-10 05:04:12 +00:00
vk_format_info_gen.py vulkan: prefer vulkan_core.h over vulkan.h 2023-02-15 18:35:14 +00:00
vk_framebuffer.c vulkan/runtime: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
vk_framebuffer.h vulkan: Fix a comment 2022-06-29 20:31:57 +00:00
vk_graphics_state.c vk/graphics_state: Support VK_EXT_attachment_feedback_loop_dynamic_state 2023-11-06 14:33:51 +00:00
vk_graphics_state.h vk/graphics_state: Add vk_pipeline_flags_feedback_loops helper 2023-11-06 14:33:51 +00:00
vk_image.c vulkan/runtime: add common implementation for GetImageSubresourceLayout() 2023-08-04 13:55:11 +00:00
vk_image.h vulkan/runtime: Add helper functions for VK_EXT_host_image_copy 2023-07-25 23:34:02 +00:00
vk_instance.c vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_instance.h vulkan: Consolidate common ICD methods 2023-11-03 20:01:14 +00:00
vk_limits.h vulkan: Add data structures to store all graphics state 2022-07-19 19:19:33 +00:00
vk_log.c util: normalize include files under src/util/*.h with util/ prefix in mesa code base 2022-11-10 06:27:25 +00:00
vk_log.h
vk_meta.c vulkan: fix potential memory leak in create_rect_list_pipeline() 2023-11-09 18:22:36 +00:00
vk_meta.h vulkan/meta: Add a get_pipeline_layout helper 2023-08-04 21:32:06 +00:00
vk_meta_blit_resolve.c nir: Drop "SSA" from NIR language 2023-08-12 16:44:41 -04:00
vk_meta_clear.c nir: Drop "SSA" from NIR language 2023-08-12 16:44:41 -04:00
vk_meta_draw_rects.c nir: Drop "SSA" from NIR language 2023-08-12 16:44:41 -04:00
vk_meta_private.h vulkan/meta: Insert a geometry shader when needed 2023-08-04 21:32:03 +00:00
vk_nir.c vulkan/runtime: add internal parameter to vk_spirv_to_nir 2023-10-09 23:37:51 +00:00
vk_nir.h vulkan/runtime: add internal parameter to vk_spirv_to_nir 2023-10-09 23:37:51 +00:00
vk_nir_convert_ycbcr.c nir: replace use of nir_src_copy() 2023-09-08 03:01:39 +00:00
vk_nir_convert_ycbcr.h nir: Drop "SSA" from NIR language 2023-08-12 16:44:41 -04:00
vk_object.c vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_object.h vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_physical_device.c vulkan: use instance allocator for object_name in some objects 2023-11-10 20:57:19 +00:00
vk_physical_device.h docs/vulkan: use hawkmoth instead of doxygen 2023-10-26 16:13:26 +00:00
vk_pipeline.c vulkan/runtime: add internal parameter to vk_spirv_to_nir 2023-10-09 23:37:51 +00:00
vk_pipeline.h vk,lvp,tu,radv,anv: Add common vk_*_pipeline_create_flags() helper 2023-11-06 14:33:51 +00:00
vk_pipeline_cache.c vulkan: Don't use set_foreach_remove when destroying pipeline caches 2023-11-13 20:09:31 +00:00
vk_pipeline_cache.h vulkan/pipeline_cache: add 'skip_disk_cache' option 2023-07-11 07:36:53 +00:00
vk_pipeline_layout.c vulkan: Fix pipeline layout allocation scope 2023-11-07 10:09:52 +00:00
vk_pipeline_layout.h vulkan: drop const for descriptor set 2022-10-21 22:36:45 +00:00
vk_query_pool.c vulkan: Add init/finish helpers for vk_query_pool 2023-08-01 19:17:05 +00:00
vk_query_pool.h vulkan: Add init/finish helpers for vk_query_pool 2023-08-01 19:17:05 +00:00
vk_queue.c vulkan/android: improve vkQueueSignalReleaseImageANDROID 2023-09-15 19:03:22 +00:00
vk_queue.h docs/vulkan: use hawkmoth instead of doxygen 2023-10-26 16:13:26 +00:00
vk_render_pass.c vk/graphics_state, tu: Rewrite renderpass flags handling 2023-11-06 14:33:51 +00:00
vk_render_pass.h vk/graphics_state: Support VK_KHR_maintenance5 2023-11-06 14:33:51 +00:00
vk_sampler.c vulkan: Add a core vk_sampler struct 2023-07-31 17:01:42 +00:00
vk_sampler.h vulkan: Add a core vk_sampler struct 2023-07-31 17:01:42 +00:00
vk_semaphore.c vulkan: Add trace points for more Vulkan waiting functions. 2023-08-29 00:27:33 +00:00
vk_semaphore.h vulkan: Replace _Alignas with alignas 2022-11-10 05:04:12 +00:00
vk_shader_module.c vulkan: Migrate shader module hash to BLAKE3. 2023-06-23 09:28:04 +00:00
vk_shader_module.h vulkan: Migrate shader module hash to BLAKE3. 2023-06-23 09:28:04 +00:00
vk_standard_sample_locations.c vulkan: Add data structures to store all graphics state 2022-07-19 19:19:33 +00:00
vk_standard_sample_locations.h vulkan: Add standard sample locations 2022-07-19 19:19:33 +00:00
vk_sync.c vulkan: Win32 sync import/export support 2023-05-15 17:14:20 +00:00
vk_sync.h vulkan: Win32 sync import/export support 2023-05-15 17:14:20 +00:00
vk_sync_binary.c
vk_sync_binary.h
vk_sync_dummy.c
vk_sync_dummy.h
vk_sync_timeline.c
vk_sync_timeline.h
vk_synchronization2.c vulkan/runtime: Preserve pNext when upgrading to synchronization2 structs 2023-01-03 17:20:30 +00:00
vk_texcompress_astc.c vulkan add 3D texture support for compute astc decoder 2023-10-11 19:28:40 +00:00
vk_texcompress_astc.h vulkan/runtime: add compute astc decoder helper functions 2023-10-11 19:28:40 +00:00
vk_texcompress_etc2.c vulkan/runtime: fix a harmless typo for ETC2 emulation 2023-10-06 00:55:18 +00:00
vk_texcompress_etc2.h vulkan/runtime, radv: remove 1D support from ETC2 emulation 2023-10-06 00:55:18 +00:00
vk_video.c vulkan/video: add h265 header encoders. 2023-11-03 22:59:37 +00:00
vk_video.h vulkan/video: add h265 header encoders. 2023-11-03 22:59:37 +00:00
vk_ycbcr_conversion.c vulkan,nir: Refactor ycbcr conversion state into a struct 2023-02-06 18:36:29 +00:00
vk_ycbcr_conversion.h vulkan,nir: Refactor ycbcr conversion state into a struct 2023-02-06 18:36:29 +00:00