Add check if format is supported in external memory host tests
authorziga-lunarg <ziga@lunarg.com>
Mon, 5 Dec 2022 15:34:50 +0000 (16:34 +0100)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Thu, 8 Dec 2022 18:01:20 +0000 (18:01 +0000)
Format properties for format used for color attachment must contain
VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT

Components: Vulkan

VK-GL-CTS issue: 4156

Affected tests:
dEQP-VK.memory.external_memory_host.bind_image_memory_and_render.*

Change-Id: Ib0346cbc849b94a5af67e5645cc057ca392f9b2f

external/vulkancts/modules/vulkan/memory/vktMemoryExternalMemoryHostTests.cpp

index e23046a..d5d3e50 100644 (file)
@@ -335,6 +335,11 @@ tcu::TestStatus ExternalMemoryHostRenderImageTestInstance::iterate ()
        // Verify image format properties before proceeding.
        verifyFormatProperties(m_testParams.m_format, tiling, usageFlags);
 
+       VkFormatProperties formatProperties;
+       m_vki.getPhysicalDeviceFormatProperties(m_physicalDevice, m_testParams.m_format, &formatProperties);
+       if ((formatProperties.linearTilingFeatures & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT) != VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT)
+               TCU_THROW(NotSupportedError, "Format does not support linear tiling for color attachment");
+
        // Create image with external host memory.
        m_image = createImage(m_testParams.m_format, tiling, usageFlags);