[Mesa-dev] [PATCH 2/2] radv: only allow cmask/dcc in color optimal.

Dave Airlie airlied at gmail.com
Thu Dec 29 23:56:49 UTC 2016


From: Dave Airlie <airlied at redhat.com>

I had this on transfers due to the clear color cmd, but
it seems like that path shouldn't get fast clears.

Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 src/amd/vulkan/radv_image.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c
index a3f5676..9c0bba2 100644
--- a/src/amd/vulkan/radv_image.c
+++ b/src/amd/vulkan/radv_image.c
@@ -712,7 +712,7 @@ radv_image_create(VkDevice _device,
 	image->size = image->surface.bo_size;
 	image->alignment = image->surface.bo_alignment;
 
-	if (image->exclusive || (image->queue_family_mask & 1) == 1)
+	if (image->exclusive || image->queue_family_mask == 1)
 		can_cmask_dcc = true;
 
 	if ((pCreateInfo->usage & VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) &&
@@ -900,8 +900,7 @@ bool radv_layout_can_fast_clear(const struct radv_image *image,
 			        VkImageLayout layout,
 			        unsigned queue_mask)
 {
-	return (layout == VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL ||
-		layout == VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL) &&
+	return layout == VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL &&
 		queue_mask == (1u << RADV_QUEUE_GENERAL);
 }
 
-- 
2.7.4



More information about the mesa-dev mailing list