platform/upstream/VK-GL-CTS.git
2 years agoFix spec info in pipeline max varyings tests
Tomasz Owczarek [Tue, 10 May 2022 14:46:28 +0000 (15:46 +0100)]
Fix spec info in pipeline max varyings tests

Add missing VkSpecializationInfo to fragment shader stage.

Components: Vulkan

VK-GL-CTS issue: 3677

Affects:
dEQP-VK.pipeline.*.max_varyings*

Change-Id: Icf702ca953ad996e9081aa9197fbdcedd21dd191

2 years agoAdd threshold to rasterization order depth checks
Ricardo Garcia [Mon, 23 May 2022 14:43:16 +0000 (16:43 +0200)]
Add threshold to rasterization order depth checks

These tests compared floating point depth values expecting exact
matches, which was causing trouble for some implementations. This commit
adds an error threshold to the check.

Affected tests:
dEQP-VK.rasterization.rasterization_order_attachment_access.depth.*

Components: Vulkan
VK-GL-CTS issue: 3711

Change-Id: If6798dfd473f57341775e83d68188e39bdf27caa

2 years agoFix test using LAYOUT_CREATE_INDEPENDENT_SETS_BIT
Piotr Byszewski [Sat, 21 May 2022 21:49:08 +0000 (23:49 +0200)]
Fix test using LAYOUT_CREATE_INDEPENDENT_SETS_BIT

Original test plan for testing VK_EXT_graphics_pipeline_library had
one test that actually doesn't require pipeline library extension.
This test wrongfully created pipeline layout using
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT flag
violating VUID-VkPipelineLayoutCreateInfo-flags-parameter.

Components: Vulkan

VK-GL-CTS issue: 3704

Affects:
dEQP-VK.pipeline.pipeline_library.graphics_library.*

Change-Id: I6842fcfd7dd686af32f989cd1b0fcd2730305d9e

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Fri, 3 Jun 2022 21:43:02 +0000 (14:43 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I4ff955997673df5a3ad35e6de3f5be8f0679dd2f

2 years agoFix aliasing issue for globalPriorityQuery feature
John Anthony [Thu, 12 May 2022 14:39:22 +0000 (16:39 +0200)]
Fix aliasing issue for globalPriorityQuery feature

Affects:
dEQP-VK.info.device_mandatory_features

Components: Vulkan

VK-GL-CTS issue: 3675

Change-Id: Id7e18078bcd9650667834915ed4bbe3453ede91c

2 years agoSeparate create with unsupported feature tests
Jari Komppa [Fri, 8 Apr 2022 11:51:17 +0000 (14:51 +0300)]
Separate create with unsupported feature tests

This change separates the create device with unsupported features tests
into separate tests so they can be ignored on case by case basis.

The change also changes the hierarchy of device_init.*, moving the
existing tests to new .basic leaves.

Affects:
dEQP-VK.api.device_init.*

New tests:
dEQP-VK.api.device_init.create_device_unsupported_features.*

Subsystem: Vulkan
VK-GL-CTS issue: 3585

Change-Id: I05b79cbc7b74eeaeeea256c7bf5fa0bd53e3d43d

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 3 Jun 2022 20:23:08 +0000 (13:23 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: If2b3f337e48dea10ccfb3fd457f17badde5c4f43

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Fri, 3 Jun 2022 19:47:51 +0000 (19:47 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I2b98a1c69c321ed574eae1878442a1b1cb5012d3

2 years agoFix redundant writes to compressed texture
Connor Abbott [Thu, 24 Mar 2022 18:40:19 +0000 (19:40 +0100)]
Fix redundant writes to compressed texture

We already dispatch one workgroup per block, so there's no need to then
loop over all the blocks in the compute shader. Just write one block per
invocation.

Components: Vulkan

Affects:
dEQP-VK.image.sample_texture.128_bit_compressed_format*
dEQP-VK.image.sample_texture.64_bit_compressed_format*

VK-GL-CTS Issue: 3582

Change-Id: If1cf7d4a79e00dcfe735aa9c4d97220242283a12

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Fri, 3 Jun 2022 15:45:00 +0000 (08:45 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Id52b20aa498ddcc1b9dc05b7415b8d67259e2043

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 2 Jun 2022 19:51:27 +0000 (12:51 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I8931b5406a04f317c172c1357c1ab3b2c7b12be3

2 years agoFix for the bounding box tests with GL 4.5
Tapani Pälli [Fri, 10 Sep 2021 12:06:10 +0000 (15:06 +0300)]
Fix for the bounding box tests with GL 4.5

Affects:
dEQP-GL*functional.primitive_bounding_box.*

Components: AOSP
VK-GL-CTS issue: 3104

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I38db9fc893a685893dbd6c2de8ab15ab3e0db11e
(cherry picked from commit 9e6d211ebf47f228f6648c7a30be8eb98cec41a9)

2 years agoFix missing self-subpass dependency
Mohd Faisal [Wed, 13 Oct 2021 14:09:01 +0000 (15:09 +0100)]
Fix missing self-subpass dependency

Self-subpass dependency required for read-after-write operation, in test
cases where the attachment is written using load-op-load at the start
of subpass and then the values are read inside the fragment shader.

Affects:

dEQP-
VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-
VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*

Components: Vulkan

VK-GL-CTS issue: 3216

Change-Id: I6c72b81dccfb7526ec4607b255ff4872b13c4d22
(cherry picked from commit 305ee4bd7e5b372b2c910b615a146f2aa4416527)

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 2 Jun 2022 19:06:02 +0000 (19:06 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Ic4e0dff0f0b61669584c3eff4602af9971552ab4

2 years agoFix int64 robustness bugs
Andreas Flöjt [Thu, 5 May 2022 12:18:06 +0000 (14:18 +0200)]
Fix int64 robustness bugs

First bug: VkImage and VkImageView that use different formats without
specifying the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag on the image.

Second bug: Using a shader with a multisampled storage image without
checking the shaderStorageImageMultisample feature.

Affects:
dEQP-VK.robustness.image_robustness.*.r64i.*

Components: Vulkan

VK-GL-CTS issue: 3680

Change-Id: I7b984c3c7b6b2ee551618b7a32d4a841e942cd95

2 years agoskip non-compresed 3D views of compressed images
Ilan Aelion [Mon, 4 Apr 2022 18:51:22 +0000 (11:51 -0700)]
skip non-compresed 3D views of compressed images

dEQP-VK.image.texel_view_compatible.graphic.*.3d_image.texture_read
tests violate VUID-VkImageViewCreateInfo-image-04739 - "If image was
created with the VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag
and format is a non-compressed format, viewType must not be
VK_IMAGE_VIEW_TYPE_3D"

Components: Vulkan
Affected Tests:
dEQP-VKSC.image.texel_view_compatible.graphic.*.3d_image.texture_read.*

Change-Id: I48512da1cdedbaecc73ac1ae1289cbbb4bc2f70c

2 years agoFix leak on SimpleAllocator
Juan A. Suarez Romero [Fri, 13 May 2022 09:50:30 +0000 (11:50 +0200)]
Fix leak on SimpleAllocator

SimpleAllocator object is leaked in some tests.

Affected tests:
dEQP-VK.compute.basic.concurrent_compute
dEQP-VK.draw.concurrent.compute_and_triangle_list

Components: Vulkan
VK-GL-CTS issue: 3634

Change-Id: Ief51211f94f2754b9133285ff7374971b7ea20e3

2 years agoFix entry points check for VK_KHR_draw_indirect_count
Ricardo Garcia [Thu, 12 May 2022 14:26:44 +0000 (16:26 +0200)]
Fix entry points check for VK_KHR_draw_indirect_count

VK_KHR_draw_indirect_count was promoted to core in Vulkan 1.2, but its
non-KHR entry points (vkCmdDrawIndirectCount and
vkCmdDrawIndexedIndirectCount) are not mandatory unless the device
supports the extension. In that case, the drawIndirectCount feature bit
will also be true. Any of the two checks is valid.

Affected tests:
dEQP-VK.api.version_check.entry_points

VK-GL-CTS issue: 3679
Components: Vulkan

Change-Id: I95666c1a22bed7da33f58a50307294c4048cd8ff

2 years agoInclude the proper formats in pViewFormats list
Ricardo Garcia [Fri, 20 May 2022 10:02:06 +0000 (12:02 +0200)]
Include the proper formats in pViewFormats list

Imageless framebuffer variants in fragment shading rate basic tests were
not including the render pass image view formats in the list of view
formats when creating the framebuffer, resulting in validation errors
with code VUID-VkFramebufferCreateInfo-flags-03205.

Affected tests:
dEQP-VK.fragment_shading_rate.basic.*

Components: Vulkan
VK-GL-CTS issue: 3705

Change-Id: I7389b8a0a2f24b3085f3963064508c8c388e43bc

2 years agoFix state binding in multiview tests
Ricardo Garcia [Mon, 23 May 2022 08:40:23 +0000 (10:40 +0200)]
Fix state binding in multiview tests

According to the spec, when multiview is enabled all non-render pass
state is undefined at the beginning of each subpass, but multiview tests
were binding vertex buffers, index buffers and descriptor sets before
beginning the render pass. This commit moves the binding commands to the
same point the pipeline is bound for each subpass.

In addition, it fixes some validation errors related to the following
VUIDs:

  - VUID-VkSubpassDependency-srcSubpass-02243
  - VUID-VkSubpassDependency2-srcSubpass-02245

Due to some subpass dependencies missing the VK_DEPENDENCY_BY_REGION_BIT
bit in their flags despite being mandated by the spec.

Affected tests:
dEQP-VK.multiview.*

Components: Vulkan
VK-GL-CTS issue: 3701

Change-Id: I4f91f3dad0305e93dce68bb43497215c628df543

2 years agoImprove comparison of VkPhysicalDeviceMemoryProperties
Chia-I Wu [Sat, 28 May 2022 00:47:42 +0000 (17:47 -0700)]
Improve comparison of VkPhysicalDeviceMemoryProperties

VkMemoryType should be fine, but VkMemoryHeap normally has a 4-byte
padding which can be garbage.  Compare individual members rather than
doing deMemCmp.

VK-GL-CTS Issue: 3590

Affects: dEQP-VK.api.info.get_physical_device_properties2.memory_properties

Components: Vulkan
Change-Id: I49e276ee15d10ca40f11c7a5fd3fb50b84ff1de3

2 years agoFix shader operator tests' precision expectation
Shahbaz Youssefi [Mon, 22 Nov 2021 20:30:26 +0000 (15:30 -0500)]
Fix shader operator tests' precision expectation

es3fShaderOperatorTests.cpp takes the reported precision for lowp and
mediump (through glGetShaderPrecisionFormat) and tests that that many
bits are actually supported by the type.

glGetShaderPrecisionFormat is a legacy function that's not very
meaningful on modern hardware (see Vulkan issue #2931), and there is no
equivalent for its functionality in Vulkan.

This relevant tests are changed such that the test now verifies that _at
least_ that many bits are used in lowp and mediump operations, rather
than _exactly_.  This aligns with the semantics of RelaxedPrecision in
SPIR-V.

Affected tests:
dEQP-GLES3.functional.shaders.operator.*

Components: OpenGL ES
VK-GL-CTS issue: 3344

Change-Id: I88a38d6ee067de8313f25327578c6666c257dc8b
(cherry picked from commit 23d62b971cec55ae49cddc9a9e37614bc9f80668)

2 years agoFix GL_MAX_FRAGMENT_INTERPOLATION_OFFSET limit check
Shahbaz Youssefi [Fri, 27 Aug 2021 03:11:56 +0000 (23:11 -0400)]
Fix GL_MAX_FRAGMENT_INTERPOLATION_OFFSET limit check

The spec is fixed to align with Vulkan, requiring the minimum value for
GL_MAX_FRAGMENT_INTERPOLATION_OFFSET to be 0.5-ULP, where

    ULP = 1/pow(2,GL_FRAGMENT_INTERPOLATION_OFFSET_BITS)

Affects:
dEQP-GL45.functional.state_query.multisample_interpolation.max_fragment_interpolation_offset.get_float
dEQP-GLES31.functional.state_query.multisample_interpolation.max_fragment_interpolation_offset.get_float
KHR-GL44.shader_multisample_interpolation.api.api
KHR-GL45.shader_multisample_interpolation.api.api
KHR-GL46.shader_multisample_interpolation.api.api
KHR-GLES31.core.shader_multisample_interpolation.api.api
KHR-GL45.limits.max_fragment_interpolation_offset
KHR-GL46.limits.max_fragment_interpolation_offset

Components: OpenGL
Khronos OpenGL issue: #149

Change-Id: I153a05ef6db8f50a6aa337188e5aeb8d504fbbdd
(cherry picked from commit 5d72b170aad664e4fcf770863d37bd041d45ff9b)

2 years agoFix warning in gcc-8
Graeme Leese [Fri, 23 Jul 2021 18:00:11 +0000 (19:00 +0100)]
Fix warning in gcc-8

The code for setting up the output buffer was duplicated into each of
the cases for different input types, and the compiler doesn't understand
that DE_ASSERT marks an unreachable path. Changing to using standard
assert fixes the warning:

vktShaderFConvertTests.cpp:541:19: error: ‘outputBufferSizeInfo::memorySizeBytes’
may be used uninitialized in this function [-Werror=maybe-uninitialized]
   541 |  BufferSizeInfo   outputBufferSizeInfo;
       |                   ^~~~~~~~~~~~~~~~~~~~

Component: Vulkan
Affects: dEQP-VK.glsl.builtin.precision_fconvert.*

Change-Id: Icf6302166d8bce7c3ae1447973c895c34465a726

2 years agoCheck pipeline construction type for fsr tests
Lionel Landwerlin [Thu, 21 Apr 2022 14:24:56 +0000 (17:24 +0300)]
Check pipeline construction type for fsr tests

Fixes commit 3b002e7706 ("Run FSR tests for pipeline library").

Components: Vulkan

Affects: dEQP-VK.fragment_shading_rate.*

VK-GL-CTS Issue: 3649

Change-Id: Iaa1f1ccee08cdf454ffe01e95763795eea5d2ac8

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Fri, 13 May 2022 17:02:58 +0000 (10:02 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I02f8752c040a1ece951a3990c22b89eee72d98b2

2 years agoFix barrier in layer_copy_before_resolving tests
Eilif Swensen [Wed, 27 Apr 2022 13:50:04 +0000 (15:50 +0200)]
Fix barrier in layer_copy_before_resolving tests

The pipeline barrier separating the clear command from the draw command
should have dstStageMask=VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT
to ensure that the clear finished before the draw starts.

Affects:

dEQP-VK.api.copy_and_blit.*.resolve_image.layer_copy_before_resolving.*
dEQP-VK.api.copy_and_blit.*.resolve_image.copy_with_regions_before_resolving.*

Components: Vulkan

VK-GL-CTS issue: 3662

Change-Id: Idf91dcfa2e83760e3e9bc877ce11278217d8cbdc

2 years agoFix EGL test list split
Paul Thomson [Wed, 13 Apr 2022 17:41:30 +0000 (18:41 +0100)]
Fix EGL test list split

Component: Android

Google bug: b/229087109

Change-Id: I1e7fd040742ef0c2dda48c9962f985ea4f517caa

2 years agoSeparate device feature tests
Jari Komppa [Fri, 25 Mar 2022 08:02:58 +0000 (10:02 +0200)]
Separate device feature tests

This change separates the physical device features tests from
one monolithic test into separate tests so they can be ignored
on case by case basis.

The change also changes the hierarchy of the properties2.* group, moving
the existing tests to a new .basic leaf node.

Affected:
dEQP-VK.api.info.get_physical_device_properties2.*

New tests:
dEQP-VK.api.info.get_physical_device_properties2.features.*

Components: Vulkan
VK-GL-CTS issue: 3576

Change-Id: I48b2997be2775249cf67fb6a5be73962f94edf13

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 13 May 2022 14:57:51 +0000 (14:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I8d971d37d58627b18a19dd52321908eb869af752

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 12 May 2022 22:25:18 +0000 (22:25 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I662983106478f288aad30e3df36c7af8276e721f

2 years agoRemove invalid texture filtering test cases
Toni Merilehti [Tue, 26 Apr 2022 10:05:14 +0000 (13:05 +0300)]
Remove invalid texture filtering test cases

Remove the 3D texture filtering test cases that use YCbCr conversion
formats. Specification states that VK_IMAGE_TYPE_2D must be used
for formats that require a sampler YCbCr conversion.

Removed tests:
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.*

VK-GL-CTS Issue: 3646

Components: Vulkan

Change-Id: I31646db161da2f3d19d3f556b7bd39be6d261442

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 12 May 2022 21:57:41 +0000 (21:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I4b2a0404cbcf9d49920e96ffb41fdb6e558ff2a5

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 12 May 2022 21:30:04 +0000 (21:30 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Id5e0c94c1ad19064f9bcf354b07ecb9a34f9bbb7

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 12 May 2022 21:05:06 +0000 (21:05 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I85db18b290ab8790b6b6ddd9417ed43c65d8e33f

2 years agoFix second barrier access mask for transfers
Connor Abbott [Thu, 5 May 2022 16:58:03 +0000 (18:58 +0200)]
Fix second barrier access mask for transfers

This was TRANSFER_WRITE instead of TRANSFER_READ due to a typo.

Components: Vulkan

Affects:
dEQP-VK.synchronization2.none_stage.*

VK-GL-CTS Issue: 3672

Change-Id: Id62e91886bc6b2137a8f8a862185956a17fb3fab

2 years agoFixes sparse flags
Matthew Netsch [Wed, 11 May 2022 15:27:38 +0000 (08:27 -0700)]
Fixes sparse flags

Spec requires that VK_IMAGE_CREATE_SPARSE_BINDING_BIT
is set if residency or alias bits are set

Components: Vulkan
VK-GL-CTS Issue: 3678

Affects:
dEQP-VK.api.info.image_format_properties.*

Change-Id: Ie8788567ae5189e6303fb7d3eb7e64b1bdd9dbcf

2 years agoSupport VK_KHR_portability_enumeration
Charles Giessen [Wed, 30 Mar 2022 22:41:48 +0000 (16:41 -0600)]
Support VK_KHR_portability_enumeration

The portability enumeration extension needs to be enabled if it is
present to allow for CTS to enumerate portability devices.

This commit refactors createDefaultInstance so that it only enumerates
the available instance extensions once instead of twice.

It fixees #3644 by adding VK_KHR_portability_enumeration to the list
of known extensions with the addition of a corresponding json file.

Components: Vulkan

Affected Tests:
All vulkan tests

Change-Id: Ib828ee9f385f2eb2e68e03a6b3b3632443da10df

2 years agoModify pipeline library tests to always specify the layout
Piers Daniell [Wed, 27 Apr 2022 19:35:06 +0000 (13:35 -0600)]
Modify pipeline library tests to always specify the layout

A recent Vulkan spec change for the VK_KHT_graphics_pipeline_library
extension now requires the VkGraphicsPipelineCreateInfo.layout
field to always be valid for final-link pipelines and never NULL.

Several tests were still using a NULL layout for either the fast
link or optimized link.

This CL updates all tests to now specify a valid layout and
also removes a test variant that explicitly tested the NULL case.

Affects:

dEQP-VK.pipeline.*

Components: Vulkan

VK-GL-CTS Issue: 3661

Change-Id: I5471a9381c3be6e110106004bc3a22110b144864

2 years agoDo not query unsupported structures
Jari Komppa [Wed, 20 Apr 2022 11:50:15 +0000 (14:50 +0300)]
Do not query unsupported structures

Changes the behavior of the get_physical_device_properties2.properties
test to not include structures in the query chain for which support is
not reported. The test can now also return not supported result in case
none of the structures is supported (a pure Vulkan 1.0
implementation).

Affected:
dEQP-VK.api.info.get_physical_device_properties2.properties

Components: Vulkan
VK-GL-CTS issue: 3610

Change-Id: I81a3f50743e720b9c7094927a17fae9fa72d7d40

2 years agoFix acceleration structure vertex and index flushes
Ricardo Garcia [Tue, 26 Apr 2022 09:48:41 +0000 (11:48 +0200)]
Fix acceleration structure vertex and index flushes

Flush the whole allocation when updating vertex and index buffers during
ray tracing acceleration structure builds. The code currently does not
track both the offset and size align to nonCoherentAtomSize, and most
vertex and index buffer allocations are actually on coherent memory.
Flushing the whole allocation allows us to avoid several validation
errors like VUID-VkMappedMemoryRange-size-01390.

Affected tests:
dEQP-VK.ray_tracing*
dEQP-VK.ray_query*

Components: Vulkan
VK-GL-CTS issue: 3656

Change-Id: I5edbbc3b67ab46eaea568842f06dc53664e78e42

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Fri, 6 May 2022 15:04:01 +0000 (15:04 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Iab357d9f9a46d2bbe710bd116003c8da423c9709

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 5 May 2022 20:38:52 +0000 (13:38 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I4378bcd20e3ec3e88838dbf9a2f6d6372ba463b6

2 years agoIncrease tolerance in fp64 mat3determinant compute
zhangkai [Thu, 14 Apr 2022 02:13:08 +0000 (19:13 -0700)]
Increase tolerance in fp64 mat3determinant compute

On QNX, the library function `strtod` has different behavior
from other platforms. It would convert string to a double value
slightly different. So increasing the tolerance slightly would
solve the problem.

Affected tests:
    dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat3

VK-GL-CTS issue: 3642
Components: Vulkan

Change-Id: I2c30029d0d6297b660e2900217d6aeb5d3bf3186

2 years agoFix extension data for EXT_texel_buffer_alignment
Piotr Byszewski [Mon, 25 Apr 2022 12:14:16 +0000 (14:14 +0200)]
Fix extension data for EXT_texel_buffer_alignment

Only the properties structure was promoted for
VK_EXT_texel_buffer_alignment, the feature structure was not
promoted. This change removes specification of "core" attribute
from "register_extension" tag for this extension as only fully
promoted extensions can have it defined.

VK-GL-CTS issue: 3564

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: If1873b8292f1e79ef557876ebb7d8d9cf9d7de83

2 years agoSupport VK_KHR_portability_enumeration
Charles Giessen [Wed, 30 Mar 2022 22:41:48 +0000 (16:41 -0600)]
Support VK_KHR_portability_enumeration

The portability enumeration extension needs to be enabled if it is
present to allow for CTS to enumerate portability devices.

This commit refactors createDefaultInstance so that it only enumerates
the available instance extensions once instead of twice.

It fixees #3644 by adding VK_KHR_portability_enumeration to the list
of known extensions with the addition of a corresponding json file.

Components: Vulkan

Affected Tests:
All vulkan tests

Change-Id: Ib828ee9f385f2eb2e68e03a6b3b3632443da10df

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 5 May 2022 18:41:19 +0000 (18:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Ia788a27e2bb8cf6ca92e09e378af26db6f50f68f

2 years agoReduce advertised sys mem on 32 bit Android
Ilkka Saarelainen [Tue, 29 Mar 2022 10:30:06 +0000 (13:30 +0300)]
Reduce advertised sys mem on 32 bit Android

This CL reduces the advertised system memory amount in 32 bit Android
builds to address some memory fragmentation issues in certain tests
that rely on the advertised memory amount.

Affects:

dEQP-VK.api.buffer.suballocation.*
dEQP-VK.api.buffer.dedicated_alloc.*
dEQP-VK.api.object_management.*
dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.pipeline.render_to_image.*.small.*
dEQP-VK.pipeline.render_to_image.*.huge.*

Components: Framework, Vulkan

VK-GL-CTS issue: 3586

Change-Id: I15ef027e3f69ddbb87e8704d0cff479782b6bda6

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 5 May 2022 18:13:29 +0000 (18:13 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Iba260ee0d9195e18e2e41ee3ec525cf5e66faa0d

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 5 May 2022 16:48:43 +0000 (09:48 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Iaeb3f5ee3ef401ef4c0d4d7db27703e8f5b6012d

2 years agoDon't alias image views in separate_channels subpass dependency tests
Connor Abbott [Fri, 13 Aug 2021 15:37:54 +0000 (17:37 +0200)]
Don't alias image views in separate_channels subpass dependency tests

This is not allowed by the Vulkan spec:

> Multiple attachments that alias the same memory must not be used in a
> single subpass.

Instead we should have the input attachment and color attachment point
to the same attachment, which is allowed.

Components: Vulkan

Affects:
dEQP-VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*

VK-GL-CTS Issue: 3052

Change-Id: Iddb1111be5147f9816104fa879e023a9a3445555
(cherry picked from commit a3e659e828a535582207149cf58a8580d45a0342)

2 years agoFix DeqpTestRunnerTest
Paul Thomson [Wed, 13 Apr 2022 18:38:46 +0000 (19:38 +0100)]
Fix DeqpTestRunnerTest

Component: Android

Google bug: b/206657494
Google bug: b/201652781

Change-Id: I3438b200105bc04ee63b0454a7ce32e4acd4de4b

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 5 May 2022 15:50:24 +0000 (15:50 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I4dbdafea321464fe25499e0a7d415488729d77ce

2 years agoSynchronize input attachment reads in IO chains
Ricardo Garcia [Tue, 19 Apr 2022 09:26:29 +0000 (11:26 +0200)]
Synchronize input attachment reads in IO chains

Each subpass in the render pass IO chain tests attempts to read the
output of the previous subpass as an input attachment, but the subpass
dependencies are missing VK_ACCESS_INPUT_ATTACHMENT_READ_BIT from the
flags in dstAccessMask.

Affected tests:
dEQP-VK.renderpass*.attachment_allocation.*

Components: Vulkan
VK-GL-CTS issue: 3643

Change-Id: I63b49709ee8cb03e364050253dc2a8a48c5b58cd

2 years agoWait for idle queue after submitting an empty job
Ricardo Garcia [Tue, 19 Apr 2022 09:53:54 +0000 (11:53 +0200)]
Wait for idle queue after submitting an empty job

The test below imports an external signaled semaphore and submits to the
queue an empty job that waits on that signaled sempahore, but the test
returns without any further wait, which means the external sempahore may
be destroyed before the driver has had a chance to use it.

Affected tests:
dEQP-VK.api.external.semaphore.sync_fd.import_signaled_temporary

Components: Vulkan
VK-GL-CTS issue: 3636

Change-Id: I3e8daa9146f6fd542ad20539a7e9b6c9f0242978

2 years agoLimit dimensionality of arrays-of-arrays in random SSBO tests
Boris Zanin [Wed, 13 Apr 2022 11:57:22 +0000 (13:57 +0200)]
Limit dimensionality of arrays-of-arrays in random SSBO tests

One of these tests used a 5 dimensional array-of-arrays, resulting
in thousands of instructions that caused issues on devices with low
ram. This change limits the total dimensionality to prevent this.

Components: Vulkan

VK-GL-CTS issue: 1829

Solves:
dEQP-VK.ssbo.layout.random.scalar.75

Affects:
dEQP-VK.ssbo.*.random.*

Change-Id: Ibee39ccb0bd1543dafce7c498f56def1e05b4815

2 years agoFix 32-bit compilation warning
Piers Daniell [Wed, 20 Apr 2022 23:10:12 +0000 (17:10 -0600)]
Fix 32-bit compilation warning

There was a call to new[] in vktSpvAsmTrinaryMinMaxTests.cpp that used
a 64-bit values as an allocation size, which is not the type the
new operator expects when compiling for a 32-bit target.

Add a cast to fix the warning.

Affects:

dEQP-VK.spirv_assembly.instruction.amd_trinary_minmax.*

Components: Vulkan
Change-Id: I0941033614d67530f6cc157b5923e47bdca5c5a9

2 years agoUpdate known conformance version for 1.3.2.0
Matthew Netsch [Mon, 11 Apr 2022 15:15:41 +0000 (08:15 -0700)]
Update known conformance version for 1.3.2.0

Components: Framework, Vulkan
VK-GL-CTS Issue: 3628

Affects:
dEQP-VK.api.driver_properties.conformance_version

Change-Id: I5d099f42fd1cc68f8a667ec368fc635ab41f8906

2 years agoUse getDevice() instead of m_logicalDevice.get() so it works in both paths
Piers Daniell [Fri, 8 Apr 2022 22:05:43 +0000 (16:05 -0600)]
Use getDevice() instead of m_logicalDevice.get() so it works in both paths

This CL fixes a regression introduced with CL9062. For the non-dynamic
paths of the test the m_logicalDevice does not contain a valid
device handle. The newly added getDevice() already handles both
the dynamic and non-dynamic paths, so use that instead of
m_logicalDevice.get().

Affects:

dEQP-VK.memory.binding.*

Components: Vulkan

VK-GL-CTS Issue: 3627

Change-Id: I4ebf74a000553d70db86035ac50b2d4f3257d6ac

2 years agoFix GLES CTS mustpass files moved after GPL merge
Piotr Byszewski [Tue, 12 Apr 2022 12:46:11 +0000 (14:46 +0200)]
Fix GLES CTS mustpass files moved after GPL merge

While performing merge from master to graphics_pipeline_library
dev branch two mustpass files were merged incorrectly. They
were somehow moved and this change restores those files.

Components: AOSP, OpenGL

VK-GL-CTS issue: 3633

Affects:
dEQP-GL*

Change-Id: I488e9f98decc434928dd64156ef4d81904b397e5

2 years agoAvoid using unsupported rasterization order feature struct
Ricardo Garcia [Thu, 7 Apr 2022 09:43:33 +0000 (11:43 +0200)]
Avoid using unsupported rasterization order feature struct

Rasterization order attachment tests with explicit synchronization
mechanisms were chaining the features structure, but these tests are run
on implementations not supporting the extension.

Affected tests:
dEQP-VK.rasterization.rasterization_order_attachment_access.*

Components: Vulkan
VK-GL-CTS issue: 3617

Change-Id: Ia3d3fac2960d1588007c320ed1b92bb6160527fb

2 years agoFixed non zero mip compressed texture tests failure
Tomasz Owczarek [Tue, 5 Apr 2022 13:13:31 +0000 (14:13 +0100)]
Fixed non zero mip compressed texture tests failure

Fixed non zero mip compressed texture tests failure
when sampling coordinates at the edge of pixels.

Components: Vulkan

VK-GL-CTS Issue: 3619

Affects:
dEQP-VK.texture.compressed*_npot_mip1

Change-Id: I4bbc80831233ebcecc34612b7fa488e94dde630a

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 14 Apr 2022 19:32:34 +0000 (19:32 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ieaa4503461360290f485df78a83ba2422a6b0dfa

2 years agoFix accidentally removed extension
James Fitzpatrick [Thu, 14 Apr 2022 09:46:59 +0000 (10:46 +0100)]
Fix accidentally removed extension

VK_KHR_global_priority was accidentally removed from the list of allowed
extensions.

Affects:
dEQP-VK.info.device_extensions
dEQP-VK.info.device_mandatory_features

Components: vulkan

VK-GL-CTS issue: 3639

Change-Id: I3173fa11c27358ad04fb970518b53ecf0e917865

2 years agoUpdate known conformance version for 1.3.1.1
Piers Daniell [Wed, 13 Apr 2022 15:23:40 +0000 (09:23 -0600)]
Update known conformance version for 1.3.1.1

Components: Framework, Vulkan
VK-GL-CTS Issue: 3628

Affects:
dEQP-VK.api.driver_properties.conformance_version

Change-Id: I3aa80d23caf74db9a5b00be19f3e80013c6d5a5a

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 14 Apr 2022 17:53:50 +0000 (10:53 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I3e2c87a50425072269106efb75c250d0cc0be061

2 years agoFix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug
Juha Heiskanen [Tue, 29 Mar 2022 09:02:53 +0000 (12:02 +0300)]
Fix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug

Compute shader writing to the view is now made by using block size
instead of pixel count.

Components: Vulkan

VK-GL-CTS Issue: 3442

Affects: dEQP-VK.image.sample_texture.*
Change-Id: Ie351fb1d2730c5377c8110453bc34629c20b5d82

2 years agoFix one more missed extension promotion
Graeme Leese [Tue, 12 Apr 2022 16:04:36 +0000 (17:04 +0100)]
Fix one more missed extension promotion

VK_EXT_extended_dynamic_state2 was not marked as having been promoted,
which meant that the CTS code which uses the core function names
exclusively doesn't work on versions that support 1.2 + the extension.

Components: Vulkan
VK-GL-CTS issue: 3631
Affects: dEQP-VK.*

Change-Id: Ia942b96f778d57337fa087042f176086d5bde608

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 14 Apr 2022 17:16:14 +0000 (17:16 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I786f14d2785e81098664f94cac78ac635da571fd

2 years agoFix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug
Juha Heiskanen [Wed, 30 Mar 2022 12:38:24 +0000 (15:38 +0300)]
Fix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug

Compute shader writing to the view is now made by using block size
instead of pixel count.

Components: Vulkan

VK-GL-CTS Issue: 3595

Affects: dEQP-VK.image.sample_texture.*

Change-Id: I50879fd7bb48f623e565c8972e7a517fb26f0ed0

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 14 Apr 2022 16:49:27 +0000 (16:49 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Id90879713fa5388ab2a4ebdd6811b454b0675763

2 years agoFix extension promotions
Iván Briano [Mon, 11 Apr 2022 20:26:06 +0000 (13:26 -0700)]
Fix extension promotions

VK_EXT_shader_image_atomic_int64 was promoted instead of
VK_KHR_shader_atomic_int64.
VK_KHR_external_semaphore lost its promotion.
VK_KHR_vulkan_memory_model was promoted to the wrong core version.

VK-GL-CTS issue: 3631

Affects:
dEQP-VK.*

Change-Id: I78712093945796adf4076e75f6f3e5c07a4ec832

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 14 Apr 2022 16:23:18 +0000 (16:23 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Ie2a23e7c3811d6cebc0b7ace2351d5a4779bd7d0

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 14 Apr 2022 15:58:41 +0000 (15:58 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I6ab43b2abea09721ad28bdba33565c7c0f0be5fd

2 years agoFix warnings with clang and GCC
Ricardo Garcia [Mon, 4 Apr 2022 08:14:57 +0000 (10:14 +0200)]
Fix warnings with clang and GCC

Affected tests:
No test result should be affected by these changes.

Components: OpenGL, Vulkan
VK-GL-CTS issue: 3602

Change-Id: If2eb0736d296add732aaff53c80a705cc306d7a3

2 years agovulkan: KHR_format_feature_flags2 modifier coverage
James Jones [Wed, 23 Mar 2022 00:50:23 +0000 (17:50 -0700)]
vulkan: KHR_format_feature_flags2 modifier coverage

Components: Vulkan

New tests:

dEQP-VK.drm_format_modifiers.list_modifiers_fmt_features2.*
dEQP-VK.drm_format_modifiers.create_list_modifiers_fmt_features2.*
dEQP-VK.drm_format_modifiers.export_import_fmt_features2.*

VK-GL-CTS issue: 3579

Change-Id: I9aa850ea60171523dd5097910e6d3104f7a86cf4

2 years agoKeep track which SBT records are needed and initialize all needed ones
Sławomir Cygan [Thu, 31 Mar 2022 13:17:59 +0000 (15:17 +0200)]
Keep track which SBT records are needed and initialize all needed ones

This fixes using uninitialized memory for SBT records, when
prepareShaderBindingTable() prepares them with flags == 0.

New boolean field is added to SBT description, marked as true when
SBT is needed according to prepareShaderBindingTable()  and needs to
be copied to device memory.

Components: Vulkan

VK-GL-CTS Issue: 3598

Affects: dEQP-VK.ray_tracing_pipeline.pipeline_no_null_shaders_flag.*

Change-Id: I5a0a4f6137cece312f7474e1c47c76eb358f62a4

2 years agoUse queues and entrypoints from custom device
Sławomir Cygan [Tue, 29 Mar 2022 15:48:53 +0000 (17:48 +0200)]
Use queues and entrypoints from custom device

This fixes the test to submit to the queue from same
device, that the command buffers where created from.

Moreover, this fixes the test to use entrypoints get from
the same device that is in use.

Components: Vulkan

VK-GL-CTS Issue: 3592

Affects: dEQP-VK.memory.binding.priority_dynamic.*

Change-Id: Ieca1f6843e31fd5dbf0ad31f4d5b4f3ce3c44453

2 years agoFix freeing custom device in dynamic state tests
Ricardo Garcia [Mon, 4 Apr 2022 15:58:55 +0000 (17:58 +0200)]
Fix freeing custom device in dynamic state tests

Some dynamic state tests use a custom device that was not being properly
freed when existing a test group that used the device. This sometimes
caused crashes on program termination.

No tests should be affected by this change. This fix only touches the
test hierarchy. However, to check the fix doesn't break anything:

dEQP-VK.dynamic_state.*

Components: Vulkan
VK-GL-CTS issue: 3602

Change-Id: I6bf97900497b6e795c1fbacef5b3fc68619a9ff4

2 years agoCheck extension support before using its image extended usage bit
Samuel Iglesias Gonsálvez [Mon, 28 Mar 2022 08:33:55 +0000 (10:33 +0200)]
Check extension support before using its image extended usage bit

Components: Vulkan
VK-GL-CTS issue: 3523

Fix:

   dEQP-VK.image.extended_usage_bit_compatibility.*

Change-Id: I5339402896320eee4434cf80679aa986ba882100
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
2 years agoFix bad merge affecting create_device_unsupported_features test
Piers Daniell [Mon, 4 Apr 2022 20:45:43 +0000 (14:45 -0600)]
Fix bad merge affecting create_device_unsupported_features test

This CL fixes the dEQP-VK.api.device_init.create_device_unsupported_features
test from reporting a false error with the pageableDeviceLocalMemory
feature.

Affects:

dEQP-VK.api.device_init.create_device_unsupported_features

Components: Vulkan

VK-GL-CTS issue: 3607

Change-Id: If14a1e2d90c2d5d8d11d47f40590c35048f4b8a0

2 years agoCheck for graphics pipeline library support in FSR tests
Ricardo Garcia [Tue, 5 Apr 2022 09:01:47 +0000 (11:01 +0200)]
Check for graphics pipeline library support in FSR tests

Fragment shading rate test variants using graphics pipeline library
were not checking for the extension to be supported.

Affected tests:
dEQP-VK.fragment_shading_rate.*.pipeline_library.*
dEQP-VK.fragment_shading_rate.*.fast_linked_library.*

Components: Vulkan
VK-GL-CTS issue: 3605

Change-Id: Iaa825424f4801ed0a38a78dfdacff533877506fb

2 years agoRestore the default pipeline layout creation flag
Piers Daniell [Tue, 5 Apr 2022 19:14:42 +0000 (13:14 -0600)]
Restore the default pipeline layout creation flag

Setting the VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT flag
in the core framework makePipelineLayout() function means that all
tests, even tests that aren't testing VK_EXT_graphics_pipeline_library,
are creating pipeline layouts optimized for independent
partial pipelines.

This flag should only be set when actually testing that feature
since it can be less optimal than the regular pipeline layout,
and is not the default all applications currently use.

This CL restores the default flag and updates the tests that
need it to override the default flag.

Affects:

dEQP-VK.*
dEQP-VK.pipeline.pipeline_library.graphics_library.*

Components: Vulkan

VK-GL-CTS issue: 3609

Change-Id: Iabc8643707f03878426c9bbe87bc0c9ee856bfb3

2 years agovulkan: Templatize the DRM format modifier tests
James Jones [Wed, 23 Mar 2022 00:49:43 +0000 (17:49 -0700)]
vulkan: Templatize the DRM format modifier tests

Components: Vulkan

Affected tests:

dEQP-VK.drm_format_modifiers.list_modifiers.*
dEQP-VK.drm_format_modifiers.create_list_modifiers.*
dEQP-VK.drm_format_modifiers.export_import.*

VK-GL-CTS issue: 3579

Change-Id: Id8720806840433a8860550e504646718e5127ce3

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Fri, 8 Apr 2022 19:01:03 +0000 (12:01 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I569c33579928f5ecef8f0a402261b2e2112b345c

2 years agoAdd tests for surfaceless queries
Jari Komppa [Wed, 9 Mar 2022 12:18:13 +0000 (14:18 +0200)]
Add tests for surfaceless queries

This change adds tests for the VK_GOOGLE_surfaceless_query
extension.

New tests:
dEQP-VK.wsi.*.surface.query_formats_surfaceless
dEQP-VK.wsi.*.surface.query_formats2_surfaceless
dEQP-VK.wsi.*.surface.query_present_modes_surfaceless

Components: Vulkan
VK-GL-CTS issue: 3557

Change-Id: I6febafc855b500052e8dedcba810dd80fb5c1e71

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 8 Apr 2022 17:52:41 +0000 (10:52 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I7a3dfef17070866462056327110f798dde9f119d

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Fri, 8 Apr 2022 16:14:23 +0000 (09:14 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I35b6b6a32a0ef4bb72d628f26b96a1ac8df46858

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 7 Apr 2022 20:56:53 +0000 (13:56 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I2c051a776b06d23239eb3ce501a999088cd0c1de

2 years agoRework extensions_data and mandatory_features
Piotr Byszewski [Mon, 25 Oct 2021 19:11:51 +0000 (21:11 +0200)]
Rework extensions_data and mandatory_features

Data from mandatory_features.txt was split to multiple json files
one per extension/vulkan_version. Those files now also include data
that was previously stored in extensions_data.txt .

VK-GL-CTS issue: 3197

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: I9756237829366ff4140dcf59dc7548a8f4328cb7

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 7 Apr 2022 18:47:24 +0000 (11:47 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I69f0b9b087df9c33b26ddd014fc1a291fc50dbdd

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 7 Apr 2022 17:48:16 +0000 (17:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I4a1b44642747f72803ff97dafd55f4ba3fabad9e

2 years agoUse associated physical device from custom instance
Ari Suonpaa [Tue, 29 Mar 2022 08:56:44 +0000 (11:56 +0300)]
Use associated physical device from custom instance

Some of the API feature info tests created a custom instance,
but still used the default physical device. This is fixed by
choosing a physical device using the custom instance.

Comparison of VkPhysicalDeviceMemoryProperties was also
changed to only check the active memoryTypes and memoryHeaps
array elements instead of doing one large deMemCmp.

VK-GL-CTS Issue: 3590

Affects:

dEQP-VK.api.info.*

Components: Vulkan
Change-Id: I2378bcd1e97b7f85e533d34c5b5f6ac3e4fa9b93

2 years agoWait for deferred operations before obtaining RT pipeline handle
Ricardo Garcia [Tue, 29 Mar 2022 14:51:18 +0000 (16:51 +0200)]
Wait for deferred operations before obtaining RT pipeline handle

The ray tracing utils, when creating ray tracing pipelines and using
deferred operations, were using the VkPipeline pointer and handler
before the deferred operation had completed, which is against the spec.

Affected tests:
dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.multithreaded_compilation_dho.*
dEQP-VK.ray_tracing_pipeline.large_shader_set.cpu_ht*

Components: Vulkan
VK-GL-CTS issue: 3588

Change-Id: Ied8f443c01e99878180130963b8988852171b8a0

2 years agoFix subgroup size control failure logging
Mike Blumenkrantz [Thu, 31 Mar 2022 13:07:29 +0000 (15:07 +0200)]
Fix subgroup size control failure logging

One of the failure messages was missing the message terminator, which
prevented it from ever being logged.

Affects:
dEQP-VK.subgroups.size_control*

Components: Vulkan
VK-GL-CTS issue: 3596

Change-Id: If649a11e0f6cf0f5e69e438d46b385b26e57dfe4

2 years agoParse test case result version when converting to XML
Ricardo Garcia [Fri, 1 Apr 2022 10:01:40 +0000 (12:01 +0200)]
Parse test case result version when converting to XML

When parsing QPA files, extract the test case result version so it can
be later used to print the proper version when converting to XML files.

Components: Framework
VK-GL-CTS issue: 3573
VK-GL-CTS public issue: 287

Change-Id: I34d005621685b0ef31a7092ec7c40e6626bf20e3

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Matthew Netsch [Thu, 7 Apr 2022 17:24:00 +0000 (17:24 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I25f8f2f56ab07a9c3f04e8cfa54f2efc11bfd80a

2 years agoAdd queue ownership release in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:08:04 +0000 (13:08 -0700)]
Add queue ownership release in modifier tests

Queue ownership transfers require a release operation and an acquire
operation. Before this patch, this test only performed the acquire
operation.

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I2998d7928d1042d6a159e1173257ee551c1120a5

2 years agoFix incorrect layout transition in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:40:46 +0000 (13:40 -0700)]
Fix incorrect layout transition in modifier tests

The queue family ownership acquire operation specifies a layout
transition from the pre-initialized layout. The image isn't in the
pre-initialized layout however, it's in the transfer dst optimal layout.
Align with the Vulkan spec, which says:

When performing a layout transition on an image subresource, the
old layout value must either equal the current layout of the
image subresource (at the time the transition executes), or else
be VK_IMAGE_LAYOUT_UNDEFINED (implying that the contents of the
image subresource need not be preserved).

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I76dbb54c699ed7d34e964de17f71ef01bc9e98a5

2 years agoFix lossy layout transitions in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:07:07 +0000 (13:07 -0700)]
Fix lossy layout transitions in modifier tests

The test performs several layout transitions that use
VK_IMAGE_LAYOUT_UNDEFINED for the initial layout. The spec says that
these transitions cause images to become undefined. The test expects
defined data from these images however. Replace these initial layouts
with layouts that don't cause data loss.

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I5e57dd197d461fba800d50239803d525c5334ac4