From: Dave Airlie Date: Thu, 29 Dec 2016 23:11:19 +0000 (+0000) Subject: radv: only allow cmask/dcc in color optimal. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=80bafc0c11bbccaceebebc8950cb564950894802;p=mesa.git radv: only allow cmask/dcc in color optimal. I had this on transfers due to the clear color cmd, but it seems like that path shouldn't get fast clears. Reviewed-by: Bas Nieuwenhuizen Signed-off-by: Dave Airlie --- diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index a3f5676a292..9c0bba2165b 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); }