From 7cab0f7838d57f7b7d5ac564e4f2ac518d8370ed Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Mon, 13 Feb 2023 09:18:28 +0200 Subject: [PATCH] anv/hasvk: handle a SAMPLED_READ/STORAGE_READ access flags Signed-off-by: Lionel Landwerlin Cc: mesa-stable Reviewed-by: Faith Ekstrand Part-of: (cherry picked from commit eb5d7056e04460be3b1152234ea7c8c21104fe04) --- .pick_status.json | 2 +- src/intel/vulkan/anv_private.h | 2 ++ src/intel/vulkan_hasvk/anv_private.h | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 7001aa092c2..85d3d1368d5 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -274,7 +274,7 @@ "description": "anv/hasvk: handle a SAMPLED_READ/STORAGE_READ access flags", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 0b2e4282c72..27f1cc4a71a 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -2290,6 +2290,7 @@ anv_pipe_invalidate_bits_for_access_flags(struct anv_device *device, case VK_ACCESS_2_SHADER_READ_BIT: case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT: case VK_ACCESS_2_TRANSFER_READ_BIT: + case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT: /* Transitioning a buffer to be read through the sampler, so * invalidate the texture cache, we don't want any stale data. */ @@ -2333,6 +2334,7 @@ anv_pipe_invalidate_bits_for_access_flags(struct anv_device *device, */ pipe_bits |= ANV_PIPE_TILE_CACHE_FLUSH_BIT; break; + case VK_ACCESS_2_SHADER_STORAGE_READ_BIT: default: break; /* Nothing to do */ } diff --git a/src/intel/vulkan_hasvk/anv_private.h b/src/intel/vulkan_hasvk/anv_private.h index 6116afbea99..da3b6bc3fa5 100644 --- a/src/intel/vulkan_hasvk/anv_private.h +++ b/src/intel/vulkan_hasvk/anv_private.h @@ -2317,6 +2317,7 @@ anv_pipe_invalidate_bits_for_access_flags(struct anv_device *device, case VK_ACCESS_2_SHADER_READ_BIT: case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT: case VK_ACCESS_2_TRANSFER_READ_BIT: + case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT: /* Transitioning a buffer to be read through the sampler, so * invalidate the texture cache, we don't want any stale data. */ @@ -2360,6 +2361,7 @@ anv_pipe_invalidate_bits_for_access_flags(struct anv_device *device, */ pipe_bits |= ANV_PIPE_TILE_CACHE_FLUSH_BIT; break; + case VK_ACCESS_2_SHADER_STORAGE_READ_BIT: default: break; /* Nothing to do */ }