mesa/src/panfrost/vulkan
Boris Brezillon 8f053e10de panvk/csf: Unconditionally clean L2 and LS caches when closing a CS
We need a clean because descriptor/CS memory can be returned to the
command pool where they get recycled. If we don't clean dirty cache
lines, those cache lines might get evicted asynchronously and their
content pushed back to main memory after the CPU has written new stuff
there.

Reported-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Fixes: 5544d39f44 ("panvk: Add a CSF backend for panvk_queue/cmd_buffer")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Tested-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31225>
2024-09-18 16:34:54 +00:00
..
bifrost panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
csf panvk/csf: Unconditionally clean L2 and LS caches when closing a CS 2024-09-18 16:34:54 +00:00
jm panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
valhall panvk: Overhaul the Bifrost descriptor set implementation 2024-06-14 20:52:21 +00:00
meson.build panvk: Add VkEvent support to the CSF backend 2024-09-11 12:58:56 +00:00
panvk_android.c panvk: Kill panvk_private.h 2024-03-27 09:47:34 +00:00
panvk_blend.h panvk: Prepare the blend logic for Valhall 2024-08-23 14:38:59 +00:00
panvk_buffer.c panvk: Check for maxBufferSize in panvk_CreateBuffer 2024-06-19 13:20:08 +02:00
panvk_buffer.h panvk: Rework the NULL test in panvk_buffer_{gpu_ptr,range}() 2024-08-21 16:14:35 +00:00
panvk_buffer_view.h panvk: Use memory pools for internal GPU data attached to vulkan objects 2024-06-17 07:31:50 +00:00
panvk_cmd_alloc.h panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_cmd_desc_state.h panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_cmd_meta.h panvk: Remove unused vk_vertex_input_state in graphics_save_ctx 2024-08-23 06:11:39 +00:00
panvk_cmd_pool.c panvk: Prepare panvk_cmd_pool for CSF 2024-08-23 14:38:59 +00:00
panvk_cmd_pool.h panvk: Prepare panvk_cmd_pool for CSF 2024-08-23 14:38:59 +00:00
panvk_cmd_push_constant.h panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_descriptor_set.h panvk: Overhaul the Bifrost descriptor set implementation 2024-06-14 20:52:21 +00:00
panvk_descriptor_set_layout.h panvk: Allow more descriptor sets on Valhall 2024-08-23 14:39:00 +00:00
panvk_device.h panvk: Add a read-write non-cached memory pool for CSF events 2024-09-11 12:58:56 +00:00
panvk_device_memory.c panvk: Transition to explicit VA assignment on v10+ 2024-09-11 12:58:56 +00:00
panvk_device_memory.h panvk: Conditionally register an host address when tracking user memory 2024-08-23 14:39:00 +00:00
panvk_image.c panvk: Switch to vk_meta 2024-08-21 16:14:35 +00:00
panvk_image.h panvk: Move image related definitions to panvk_image.{h,c} 2024-03-27 09:47:33 +00:00
panvk_image_view.h panvk: Use memory pools for internal GPU data attached to vulkan objects 2024-06-17 07:31:50 +00:00
panvk_instance.c panvk: Add a CSF backend for panvk_queue/cmd_buffer 2024-09-11 12:58:56 +00:00
panvk_instance.h panvk: Add a CSF backend for panvk_queue/cmd_buffer 2024-09-11 12:58:56 +00:00
panvk_macros.h panvk: Advertize v10 support 2024-09-11 12:58:56 +00:00
panvk_mempool.c panvk: Ensure to unref transient bo in reset for mempools 2024-06-19 13:20:13 +02:00
panvk_mempool.h panvk: Prepare panvk_mempool for shared device memory pools 2024-06-17 07:31:50 +00:00
panvk_meta.h panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_physical_device.c panvk: Temporarily disable VK_FORMAT_D32_SFLOAT_S8_UINT on Valhall 2024-09-17 13:13:58 +00:00
panvk_physical_device.h panvk: Add more allocation checks in create_device 2024-06-19 13:20:15 +02:00
panvk_priv_bo.c panvk: Transition to explicit VA assignment on v10+ 2024-09-11 12:58:56 +00:00
panvk_priv_bo.h panvk: Store private BOs in lists instead of dynarrays 2024-06-17 07:31:50 +00:00
panvk_query.c panvk: Kill panvk_private.h 2024-03-27 09:47:34 +00:00
panvk_sampler.h panvk: Make panvk_sampler a per-gen 2024-03-27 09:47:34 +00:00
panvk_shader.h panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_vX_blend.c panvk: Prepare the blend logic for Valhall 2024-08-23 14:38:59 +00:00
panvk_vX_buffer_view.c panvk: Use memory pools for internal GPU data attached to vulkan objects 2024-06-17 07:31:50 +00:00
panvk_vX_cmd_desc_state.c panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_vX_cmd_meta.c panvk: Prepare cmd_meta for Valhall 2024-08-23 14:39:00 +00:00
panvk_vX_cmd_push_constant.c panvk: Be robust against allocation failures in a command buffer context 2024-09-11 12:58:56 +00:00
panvk_vX_descriptor_set.c panvk: Refcount private BOs 2024-06-17 07:31:50 +00:00
panvk_vX_descriptor_set_layout.c panvk: Overhaul the Bifrost descriptor set implementation 2024-06-14 20:52:21 +00:00
panvk_vX_device.c panvk: Add a read-write non-cached memory pool for CSF events 2024-09-11 12:58:56 +00:00
panvk_vX_image_view.c panvk: Switch to vk_meta 2024-08-21 16:14:35 +00:00
panvk_vX_nir_lower_descriptors.c panvk: Extend the descriptor lowering pass to support Valhall 2024-08-23 14:38:59 +00:00
panvk_vX_sampler.c panvk: Implement and advertise anisotropy support 2024-06-26 16:33:41 +00:00
panvk_vX_shader.c panvk: Fix valhall_pack_buf_idx() for SSBO store/atomic operations 2024-09-18 13:45:57 +00:00
panvk_wsi.c panvk: Kill panvk_private.h 2024-03-27 09:47:34 +00:00
panvk_wsi.h panvk: Move panvk_wsi definitions to panvk_wsi.h 2024-03-27 09:47:34 +00:00