The existence of a DRM device is not mandatory
authorTony Zlatinski <tzlatinski@nvidia.com>
Wed, 28 Jul 2021 21:41:09 +0000 (16:41 -0500)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 12 Aug 2021 15:20:29 +0000 (15:20 +0000)
The VK_EXT_physical_device_drm spec states:
DRM defines multiple device node types. Each physical device may
have one primary node and one render node associated.
Physical devices may have no primary node (e.g. if the device does
not have a display subsystem), may have no render node (e.g. if it is
a software rendering engine), or may have neither (e.g. if it is a
software rendering engine without a display subsystem).

According to the above statement, a DRM device does not have to
always be present for a device to be compliant with the
VK_EXT_physical_device_drm spec.

Components: Vulkan

VK-GL-CTS Issue: 3029

Affects: dEQP-VK.api.device_drm_properties.drm_files_exist

Change-Id: I6d48b15d142650ee0db2dafd5e1b7f3c30e7a837

external/vulkancts/modules/vulkan/api/vktApiDeviceDrmPropertiesTests.cpp

index 12ac82801c317f164e00b317f836c33d8c983dc5..f0dca7fbf058b87fba48bc565e517a52ec10ad5b 100644 (file)
@@ -98,7 +98,7 @@ public:
                *pNumDevices = intGetDevices(DE_NULL, 0);
 
                if (*pNumDevices < 0)
-                       TCU_FAIL("Failed to query number of DRM devices in system");
+                       TCU_THROW(NotSupportedError, "Failed to query number of DRM devices in system");
 
                if (*pNumDevices == 0)
                        return DE_NULL;
@@ -177,11 +177,9 @@ void testFilesExist (const VkPhysicalDeviceDrmPropertiesEXT& deviceDrmProperties
        libDrm.freeDevices(drmDevices, numDrmDevices);
 #endif // DEQP_SUPPORT_DRM
 
-       if (!primaryFound)
-               TCU_FAIL("DRM primary device file not found");
-
-       if (!renderFound)
-               TCU_FAIL("DRM render device file not found");
+       if (!primaryFound && !renderFound) {
+               TCU_THROW(NotSupportedError, "Nether DRM primary nor render device files were found");
+       }
 }
 
 static tcu::TestStatus testDeviceDrmProperties (Context& context, const TestType testType)