mesa/src/virtio/vulkan
Yiwei Zhang 1718980e85 venus: force async pipeline create on threads creating descriptor pools
This works around some Unity engine behaivor with ANGLE-on-Venus, when
cmd pools are created on main thread once while the render thread only
does descriptor pool creation for set allocations during recording time.

This change also explicitly forces async pipeline create for threads
creating the device instead of implicitly via feedback cmd pool create.
This ensures intended behavior when feedback is disabled.

Fixes: d17ddcc847 ("venus: dispatch background shader tasks to secondary ring")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27347>
2024-01-30 23:50:47 +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: recycle linked query feedback immediately during submission 2024-01-26 23:40:52 +00:00
vn_command_buffer.h venus: add comments for query feedback batch free list 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: force async pipeline create on threads creating descriptor pools 2024-01-30 23:50:47 +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: force async pipeline create on threads creating descriptor pools 2024-01-30 23:50:47 +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: recycle linked query feedback immediately during submission 2024-01-26 23:40:52 +00:00
vn_feedback.h venus: recycle linked query feedback immediately during submission 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 vulkan: enable VK_KHR_shader_expect_assume 2024-01-30 19:09:42 +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: handle empty resolved query feedback list 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