radv: Invalidate L1 for VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT.
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 4 Jan 2018 00:45:15 +0000 (01:45 +0100)
committerBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 4 Jan 2018 18:35:36 +0000 (19:35 +0100)
These are just shaders reads, so we need to invalidate L1.

Fixes: 6dbb0eaccc "radv: handle subpass cache flushes"
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
src/amd/vulkan/radv_cmd_buffer.c

index 6dc80acef079e16f2a6f1d6e64642b8b7ec988fc..0faf8030b498bafb536f57ab6d6e4a84646ea2d9 100644 (file)
@@ -2014,11 +2014,11 @@ radv_dst_access_flush(struct radv_cmd_buffer *cmd_buffer,
                switch ((VkAccessFlagBits)(1 << b)) {
                case VK_ACCESS_INDIRECT_COMMAND_READ_BIT:
                case VK_ACCESS_INDEX_READ_BIT:
-               case VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT:
                        break;
                case VK_ACCESS_UNIFORM_READ_BIT:
                        flush_bits |= RADV_CMD_FLAG_INV_VMEM_L1 | RADV_CMD_FLAG_INV_SMEM_L1;
                        break;
+               case VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT:
                case VK_ACCESS_SHADER_READ_BIT:
                case VK_ACCESS_TRANSFER_READ_BIT:
                case VK_ACCESS_INPUT_ATTACHMENT_READ_BIT: