From f73f861aba1e7821a5b854e5b3420e2095fcb934 Mon Sep 17 00:00:00 2001 From: Sai Kiran Korwar Date: Wed, 6 Jul 2022 16:13:34 +0530 Subject: [PATCH] Fix vkwsi Display control tests Tests that attempt to interact with display via the display control extension must not be run when other windowing systems have display access. Return NotSupported if Display is unavailable because the windowing system has access. Affects: dEQP-VK.wsi.display_control.display_power_control dEQP-VK.wsi.display_control.register_display_event Components: Vulkan VK-GL-CTS issue: 3804 Change-Id: I59b78cf1dc8089d1741e1b23bc7391d30c85bebd --- .../vulkancts/modules/vulkan/wsi/vktWsiDisplayControlTests.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/external/vulkancts/modules/vulkan/wsi/vktWsiDisplayControlTests.cpp b/external/vulkancts/modules/vulkan/wsi/vktWsiDisplayControlTests.cpp index 653aae7..5f631d8 100644 --- a/external/vulkancts/modules/vulkan/wsi/vktWsiDisplayControlTests.cpp +++ b/external/vulkancts/modules/vulkan/wsi/vktWsiDisplayControlTests.cpp @@ -964,6 +964,7 @@ void getDisplays(Context& context, std::vector& availableDisplays) deUint32 countReported = 0u; VkPhysicalDevice physicalDevice = context.getPhysicalDevice(); const InstanceInterface& vki = context.getInstanceInterface(); + const vk::Platform& platform = context.getTestContext().getPlatform().getVulkanPlatform(); VkResult result = vki.getPhysicalDeviceDisplayPropertiesKHR(physicalDevice, &countReported, DE_NULL); if (result != VK_SUCCESS) @@ -972,6 +973,15 @@ void getDisplays(Context& context, std::vector& availableDisplays) if (countReported == 0) TCU_THROW(NotSupportedError, "No displays available"); + for (int typeNdx = 0; typeNdx < vk::wsi::TYPE_LAST; ++typeNdx) + { + vk::wsi::Type wsiType = (vk::wsi::Type)typeNdx; + if (platform.hasDisplay(wsiType)) + { + TCU_THROW(NotSupportedError, "Display is unavailable as windowing system has access"); + } + } + // get display properties std::vector displaysProperties(countReported); result = vki.getPhysicalDeviceDisplayPropertiesKHR(physicalDevice, &countReported, &displaysProperties[0]); -- 2.7.4