mesa/src/amd/vulkan
Samuel Pitoiset 66f7289d56 radv: add reference counting for descriptor set layouts
The spec states that descriptor set layouts can be destroyed almost
at any time:

   "VkDescriptorSetLayout objects may be accessed by commands that
    operate on descriptor sets allocated using that layout, and those
    descriptor sets must not be updated with vkUpdateDescriptorSets
    after the descriptor set layout has been destroyed. Otherwise,
    descriptor set layouts can be destroyed any time they are not in
    use by an API command."

Based on ANV.

Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5893
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14621>
2022-02-07 08:24:36 +01:00
..
layers radv/sqtt: Add and enable basic EXT_debug_utils support. 2022-01-28 07:47:10 +00:00
winsys radv: Handle SDMA for padding. 2022-02-02 22:23:17 +00:00
.editorconfig radv: Update editorconfig. 2021-04-10 03:31:58 +02:00
meson.build radv: advertise Vulkan 1.3 2022-01-25 15:57:53 +00:00
radv_acceleration_structure.c radv: avoid providing an align_offset to intrinsic builders 2022-01-21 13:45:33 +00:00
radv_acceleration_structure.h radv: Add copy/serialization info to accel struct headers. 2021-10-01 13:43:28 +00:00
radv_android.c radv: Move QueueSignalReleaseImageANDROID to common code 2022-01-05 16:36:10 +00:00
radv_check_va.py radv: add a Python script to check if a VA was ever valid 2020-12-30 08:40:21 +01:00
radv_cmd_buffer.c radv: add reference counting for descriptor set layouts 2022-02-07 08:24:36 +01:00
radv_constants.h radv: 256 byte push constants. 2022-01-12 01:08:39 +00:00
radv_cs.h radv: apply spi_cu_en to CU_EN 2022-01-05 01:36:10 -05:00
radv_debug.c radv: dump the VS prolog disassembly to the hang report 2022-01-04 07:50:07 +00:00
radv_debug.h radv: use wave32 for raytracing 2022-01-21 16:25:16 +00:00
radv_descriptor_set.c radv: add reference counting for descriptor set layouts 2022-02-07 08:24:36 +01:00
radv_descriptor_set.h radv: add reference counting for descriptor set layouts 2022-02-07 08:24:36 +01:00
radv_device.c radv/sqtt: Add and enable basic EXT_debug_utils support. 2022-01-28 07:47:10 +00:00
radv_formats.c radv: Set up ETC2 emulation wiring. 2021-12-14 11:30:48 +00:00
radv_image.c radv: allow to disable anisotropic filtering for single level image with drirc 2022-01-13 16:17:48 +00:00
radv_llvm_helper.cpp radv: Rename radv_shader_helper.h to radv_llvm_helper.h 2021-10-01 10:40:18 +02:00
radv_llvm_helper.h radv: Rename radv_shader_helper.h to radv_llvm_helper.h 2021-10-01 10:40:18 +02:00
radv_meta.c radv: do not restore NULL compute pipelines after meta operations 2022-01-24 08:47:58 +00:00
radv_meta.h radv: Use MAX_PUSH_CONSTANTS_SIZE for saved push constants. 2022-01-12 01:08:39 +00:00
radv_meta_blit.c radv: add radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_blit2d.c radv: add radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_buffer.c radv: avoid providing a write_mask to intrinsic builders 2022-01-21 13:45:33 +00:00
radv_meta_bufimage.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_clear.c radv: avoid providing a write_mask to intrinsic builders 2022-01-21 13:45:33 +00:00
radv_meta_copy.c radv: partial sdma support 2022-01-11 12:18:35 +00:00
radv_meta_copy_vrs_htile.c radv: avoid providing an align_mul to intrinsic builders 2022-01-21 13:45:33 +00:00
radv_meta_dcc_retile.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_decompress.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_etc_decode.c radv: Add ETC2 decode shader. 2021-12-14 11:30:48 +00:00
radv_meta_fast_clear.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_fmask_copy.c radv: fix optimized MSAA copies with suballocated images 2022-01-26 10:54:33 +00:00
radv_meta_fmask_expand.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_resolve.c radv: fix restoring subpass during hw/fs color resolves 2021-12-28 12:53:12 +00:00
radv_meta_resolve_cs.c radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
radv_meta_resolve_fs.c radv: fix restoring subpass during hw/fs color resolves 2021-12-28 12:53:12 +00:00
radv_nir_lower_ycbcr_textures.c nir: Drop the unused instr arg for src/dest copy functions. 2021-09-14 17:53:06 +00:00
radv_nir_to_llvm.c mesa/*: use an internal enum for tessellation primitive types. 2022-01-19 21:54:58 +00:00
radv_pass.c radv: Support VK_KHR_dynamic_rendering for pipeline creation. 2021-12-05 17:21:32 +00:00
radv_perfcounter.c radv: add few helpers for configuring performance counters 2021-12-08 08:40:51 +00:00
radv_pipeline.c radv: switch a bunch of struct/enum to 1.3 versions 2022-01-25 15:57:53 +00:00
radv_pipeline_cache.c radv: upload shader binaries of a pipeline contiguously in memory 2021-12-02 07:17:04 +00:00
radv_pipeline_rt.c radv: use 8x4 workgroups for wave32 RT 2022-01-21 16:25:16 +00:00
radv_private.h radv: add reference counting for descriptor set layouts 2022-02-07 08:24:36 +01:00
radv_query.c radv: avoid providing an align_mul to intrinsic builders 2022-01-21 13:45:33 +00:00
radv_radeon_winsys.h radv/winsys: remove unused syncobj functions 2022-01-06 09:13:50 +00:00
radv_sdma_copy_image.c radv: partial sdma support 2022-01-11 12:18:35 +00:00
radv_shader.c nir/lower_subgroups: Rename lower_shuffle to lower_relative_shuffle 2022-02-01 16:27:45 +00:00
radv_shader.h radv: switch a bunch of struct/enum to 1.3 versions 2022-01-25 15:57:53 +00:00
radv_shader_args.c radv: Use 16-bits to store push constant indices. 2022-01-12 01:08:39 +00:00
radv_shader_args.h radv: constify radv_shader_info in radv_declare_shader_args() 2021-11-29 10:10:06 +00:00
radv_shader_info.c mesa/*: use an internal enum for tessellation primitive types. 2022-01-19 21:54:58 +00:00
radv_spm.c radv: add initial SPM support on GFX10+ 2021-12-08 08:40:51 +00:00
radv_sqtt.c radv: add initial SPM support on GFX10+ 2021-12-08 08:40:51 +00:00
radv_util.c radv: Switch to the new common vk_error helpers 2021-10-07 20:51:36 +00:00
radv_wsi.c radv: implement wsi's private transfer queue using SDMA 2022-01-11 12:18:35 +00:00
si_cmd_buffer.c radv: optimize CPU overhead of si_cp_dma_prefetch() slightly 2022-01-21 20:15:52 +00:00
vk_format.h vulkan: move common format helpers to vk_format 2021-11-19 12:23:19 +01:00
vulkan.sym radv: Add Android module info to linker script. 2021-01-12 20:17:52 +00:00
vulkan_radv.def radv: fix build with mingw 2021-08-13 12:13:21 +02:00