mesa/src/virtio/vulkan
Juston Li c3417c5bb8 venus: refactor query feedback cmds
The list free_query_feedback_cmds for recycling query feedback cmds was
only used in vn_command_pool when it was a vn_feedback_cmd_pool.

For clarity, refactor and store this list in vn_feedback_cmd_pool
instead and introduce a new struct vn_query_feedback_cmd that references
the feedback cmd and the feedback cmd pool for tracking.

Refactor out the allocation portion of query feedback cmds into its own
function for allocating the new vn_query_feedback_cmd struct.

Fixes: 5b24ab91e4 ("venus: switch to unconditionally deferred query feedback")

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27163>
2024-01-26 23:40:52 +00:00
..
.clang-format venus: clang format fixes 2024-01-03 07:16:23 +00:00
meson.build venus/android: Switch to using u_gralloc 2024-01-04 01:35:13 +00:00
vn_android.c venus: make tls hint specific to pipeline creation 2024-01-11 06:05:01 +00:00
vn_android.h venus/android: Switch to using u_gralloc 2024-01-04 01:35:13 +00:00
vn_buffer.c venus: rename buffer cache to buffer reqs cache 2024-01-11 01:40:06 +00:00
vn_buffer.h venus: rename buffer cache to buffer reqs cache 2024-01-11 01:40:06 +00:00
vn_command_buffer.c venus: refactor query feedback cmds 2024-01-26 23:40:52 +00:00
vn_command_buffer.h venus: refactor query feedback cmds 2024-01-26 23:40:52 +00:00
vn_common.c venus: default to enable GPL 2024-01-23 01:33:09 +00:00
vn_common.h venus: default to enable GPL 2024-01-23 01:33:09 +00:00
vn_cs.c venus: render server enforces blob_id_0 2023-02-08 05:34:13 +00:00
vn_cs.h venus: clang format fixes 2024-01-03 07:16:23 +00:00
vn_descriptor_set.c venus: ensure object id is unique 2024-01-18 01:13:59 +00:00
vn_descriptor_set.h venus: Avoid to copy the descriptor sets when it is not required 2023-01-06 11:20:00 +00:00
vn_device.c venus: ensure object id is unique 2024-01-18 01:13:59 +00:00
vn_device.h venus: clean up secondary ring 2024-01-11 06:05:01 +00:00
vn_device_memory.c venus: ensure object id is unique 2024-01-18 01:13:59 +00:00
vn_device_memory.h venus: use vk_device_memory tracked memory_type_index 2023-10-28 00:28:40 +00:00
vn_feedback.c venus: refactor query feedback cmds 2024-01-26 23:40:52 +00:00
vn_feedback.h venus: refactor query feedback cmds 2024-01-26 23:40:52 +00:00
vn_icd.c venus: clang format fixes 2024-01-03 07:16:23 +00:00
vn_icd.h venus: add driver skeleton 2021-04-08 17:15:37 +00:00
vn_image.c venus: ensure object id is unique 2024-01-18 01:13:59 +00:00
vn_image.h venus: add LRU cache eviction for image mem reqs cache 2024-01-11 01:40:06 +00:00
vn_instance.c venus: allow tls ring submission to utilize the entire ring shmem 2024-01-23 01:33:09 +00:00
vn_instance.h venus: TLS ring 2024-01-11 06:05:01 +00:00
vn_physical_device.c venus: default to enable GPL 2024-01-23 01:33:09 +00:00
vn_physical_device.h venus: enable VK_EXT_extended_dynamic_state3 2023-11-15 23:30:14 +00:00
vn_pipeline.c venus: fix to respect the final pipeline layout 2024-01-23 01:33:09 +00:00
vn_pipeline.h venus: Add enum vn_pipeline_type 2023-10-18 12:12:17 -07:00
vn_query_pool.c venus: switch to vn_ring as the protocol interface - part 3 2023-12-08 04:06:37 +00:00
vn_query_pool.h venus: ensure consistency of query overflow behavior 2023-07-12 21:18:06 +00:00
vn_queue.c venus: refactor query feedback cmds 2024-01-26 23:40:52 +00:00
vn_queue.h venus: drop device, family, index, flags tracking from vn_queue 2023-09-18 22:33:49 +00:00
vn_render_pass.c venus: avoid redundant layout transition for optimal internal layout 2024-01-12 19:34:56 +00:00
vn_render_pass.h venus: Use VkImageAspectFlags in vn_subpass 2023-10-18 12:12:17 -07:00
vn_renderer.h venus: Delete vn_renderer_info::has_cache_management 2023-03-30 09:55:39 +00:00
vn_renderer_internal.c venus: enable renderer shmem cache dump for cache debug 2023-12-08 04:06:37 +00:00
vn_renderer_internal.h venus: enable renderer shmem cache dump for cache debug 2023-12-08 04:06:37 +00:00
vn_renderer_util.c venus: make vn_renderer_shmem_pool thread-safe 2023-12-08 04:06:37 +00:00
vn_renderer_util.h venus: make vn_renderer_shmem_pool thread-safe 2023-12-08 04:06:37 +00:00
vn_renderer_virtgpu.c venus: clang format fixes 2024-01-03 07:16:23 +00:00
vn_renderer_vtest.c venus: Delete vn_renderer_info::has_cache_management 2023-03-30 09:55:39 +00:00
vn_ring.c venus: allow tls ring submission to utilize the entire ring shmem 2024-01-23 01:33:09 +00:00
vn_ring.h venus: allow tls ring submission to utilize the entire ring shmem 2024-01-23 01:33:09 +00:00
vn_wsi.c venus: make tls hint specific to pipeline creation 2024-01-11 06:05:01 +00:00
vn_wsi.h venus: remove redundant abstractions for wsi struct search 2023-02-28 04:56:14 +00:00