platform/upstream/VK-GL-CTS.git
16 months agoFix atomic tests' texture size
Aitor Camacho [Tue, 8 Nov 2022 19:01:27 +0000 (20:01 +0100)]
Fix atomic tests' texture size

Atomic tests did not check if the wanted texture size for the
tested texture type is supported by the device

Affects:
*.image_load_store.*.atomic.*return_value

Components: OpenGL, OpenGL ES

VK-GL-CTS issue: 2876

Change-Id: If3d7e233480f65877ceb981057fd9d620c563e58

16 months agoFix to enable the robustness extension.
Hyunjun Ko [Fri, 25 Nov 2022 01:48:36 +0000 (10:48 +0900)]
Fix to enable the robustness extension.

Affects:
dEQP-VK.binding_model.descriptor_buffer.robust.buffer_access.*

VK-GL-CTS Issue: 4141

Components: Vulkan

Change-Id: Iffbdc66b353d2192d1f15c1370a0ef114cc84c4c

16 months agoRename CTS "build" Python module to "ctsbuild"
Ricardo Garcia [Fri, 9 Dec 2022 14:38:39 +0000 (15:38 +0100)]
Rename CTS "build" Python module to "ctsbuild"

This avoid name conflicts with a popular Python module that may be
installed in the system.

VK-GL-CTS issue: 4162
VK-GL-CTS public issue: 334
Components: Framework

Change-Id: Ic89cbf59e0f9bc00c0a94fb303f3c2051332365f

16 months agoFix Android release build due to unused variable
Ricardo Garcia [Thu, 15 Dec 2022 09:28:31 +0000 (10:28 +0100)]
Fix Android release build due to unused variable

The affected variable is a static constexpr uint32_t that's only used
for an assertion in debug builds.

No test results should be affected by this change.

Components: Vulkan
VK-GL-CTS issue: 4178

Change-Id: I970b2c82760fd54be91bfe9549baa8ebc57bb0f9

16 months agoFix primitive fragment shading rate mesh feature requirements
Ricardo Garcia [Mon, 5 Dec 2022 09:55:16 +0000 (10:55 +0100)]
Fix primitive fragment shading rate mesh feature requirements

primitiveFragmentShadingRate is mandatory if
primitiveFragmentShadingRateMeshShader is supported. This was not
correctly expressed in the feature requirements test.

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

Components: Vulkan
VK-GL-CTS issue: 4154

Change-Id: If34eeb119c0dc8404dbca14271119fc09461fe16

16 months agoAdd some extra boilerplate handling functions.
Amber [Tue, 22 Nov 2022 09:15:10 +0000 (10:15 +0100)]
Add some extra boilerplate handling functions.

These facilitate the creation of images with buffers
for verification and views associated with them, easier
creation of command buffers and a more compact way to
use instance interfaces devices and allocators.

Affected tests:
dEQP-VK.compute.basic.copy_ssbo_to_image_small
dEQP-VK.compute.basic.copy_ssbo_to_image_large

Components: Vulkan

Change-Id: I0bc396382fe6cab16e2b23fb3c2961cc4f7ae97b

16 months agoAdds missing coverage of buffer markers with non-zero memory offset
Charlie Turner [Tue, 29 Nov 2022 08:05:04 +0000 (09:05 +0100)]
Adds missing coverage of buffer markers with non-zero memory offset

Ensure that writing buffer markers to VkBuffer's backed with an
allocation at an offset works as intended.

Since SimpleAllocator was passing 0u as an offset to internal helper
classes, it seemed a logical place to expose the ability to perform a
suballocation in the backing device memory.

ExternalHostMemory was not a clean fit to the allocator interfaces, so
there the offset as been wedged in with some pointer arithmetic.

This covers an issue fixed by,

https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16698

Also included are some refactoring's to use more code from the DE
libraries, rather than duplicating in this test class.

Components: Vulkan

Co-authored-by: Amber <amber@igalia.com>
New tests:
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.memory_dep.draw_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.memory_dep.draw_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.graphics.external_host_mem.bottom_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.memory_dep.draw_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.memory_dep.draw_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.graphics.default_mem.bottom_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.compute.external_host_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.compute.external_host_mem.bottom_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.bottom_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.compute.external_host_mem.bottom_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.compute.default_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.compute.default_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.top_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.compute.default_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.compute.default_mem.bottom_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.bottom_of_pipe.memory_dep.dispatch_offset_24
dEQP-VK.api.buffer_marker.compute.default_mem.bottom_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.transfer.external_host_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.transfer.external_host_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.transfer.external_host_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.transfer.external_host_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.transfer.external_host_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.transfer.external_host_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.transfer.external_host_mem.bottom_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.transfer.external_host_mem.bottom_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.transfer.default_mem.top_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.transfer.default_mem.top_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.transfer.default_mem.top_of_pipe.overwrite.64_offset_24
dEQP-VK.api.buffer_marker.transfer.default_mem.top_of_pipe.memory_dep.buffer_copy_offset_24
dEQP-VK.api.buffer_marker.transfer.default_mem.bottom_of_pipe.sequential.64_offset_16
dEQP-VK.api.buffer_marker.transfer.default_mem.bottom_of_pipe.sequential.65536_offset_1024
dEQP-VK.api.buffer_marker.transfer.default_mem.bottom_of_pipe.overwrite.64_offset_24

VK-GL-CTS issue: 3721

Change-Id: I5990d2a4903f0b4091cfc6f5dc61ec52699c7bae

16 months agoTest unused shader stages with graphics pipeline libraries
Ricardo Garcia [Tue, 22 Nov 2022 16:29:58 +0000 (17:29 +0100)]
Test unused shader stages with graphics pipeline libraries

Test pStages is properly ignored when creating graphics pipeline
libraries that do not need shading stages, like for vertex input state
and for fragment output state.

New tests:
dEQP-VK.pipeline.*.misc.unused_shader_stages*

Components: Vulkan
VK-GL-CTS issue: 4007

Change-Id: I3453fb48a422e135fc394ffc7d4ad006f1739a1f

16 months agoSome refactorings to improve wildcard performance on debug CTS builds
Eric Werness [Thu, 10 Nov 2022 22:23:15 +0000 (14:23 -0800)]
Some refactorings to improve wildcard performance on debug CTS builds

Measuring a VS2019 debug build running "--deqp-case=dEQP-VK.*faketestname" these changes
take the runtime from 800 seconds to 240 seconds

Tests run locally:

 --deqp-case=dEQP-VK.*faketestname and confirmed zero tests run and improved performance with debug build

Following commands run and confirmed same count of tests before and after the change:

Wildcard without dot

 --deqp-case=dEQP-VK.ray_tracing_pipeline*rgen*

Wildcard with dot

 --deqp-case=dEQP-VK.info.*

Wildcard at start and end

 --deqp-case=*peer_memory*

Components: Framework

VK-GL-CTS issue: 4149

Change-Id: I91348b3e0824014897393b6ee07864a4b786186f

16 months agoFix enabling robustBufferAccess in robust buffer write tests
ziga-lunarg [Thu, 8 Dec 2022 20:27:20 +0000 (21:27 +0100)]
Fix enabling robustBufferAccess in robust buffer write tests

Components: Vulkan

VK-GL-CTS issue: 4168

Affected tests:
dEQP-VK.robustness.buffer_access.*.oob_storage_write.*

Change-Id: I14f612e461093c777bdede50b3d665fa7914ea13

16 months agoFix promoted feature structures tests
ziga-lunarg [Wed, 7 Dec 2022 16:22:19 +0000 (17:22 +0100)]
Fix promoted feature structures tests

Do not use structures from partially promoted features

Components: Vulkan

VK-GL-CTS issue: 4161

Affected tests:
dEQP-VK.api.info.get_physical_device_properties2.features.create_device_with_promoted1*_structures

Change-Id: I06d27e5371c5193c557c628db715698e2ada07a5

16 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main
Piotr Byszewski [Mon, 19 Dec 2022 08:11:13 +0000 (09:11 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main

Change-Id: I4518d23a12781a845bc33bacd811b692689ef907

16 months agoFix src stage value in pipeline barrier used to init resolve images
Sławomir Cygan [Fri, 16 Sep 2022 16:22:14 +0000 (18:22 +0200)]
Fix src stage value in pipeline barrier used to init resolve images

srcStage cannot be 0 it synchronization2 feature is not explicitely
required (enabled) by the test.

Components: Vulkan

VK-GL-CTS Issue: 3949

Change-Id: I66d3b5b55ca3732ede7284a010a68841c0a04275
Affects: dEQP-VK.pipeline.*.multisample.misc.dynamic_rendering.*

16 months agoAllow 0 creation duration for pipeline libraries without shaders
Slawomir Cygan [Tue, 22 Nov 2022 16:50:16 +0000 (17:50 +0100)]
Allow 0 creation duration for pipeline libraries without shaders

Affects: dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.*

VK-GL-CTS Issue: 4130

Components: Vulkan
Change-Id: Iebdeb76d30d4144ccba83c7d3ad4de7f269552c8

16 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Piotr Byszewski [Sun, 18 Dec 2022 16:24:48 +0000 (17:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: I473fdbb6258063ddc4b07598519f9212cf4850ef

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Piotr Byszewski [Fri, 16 Dec 2022 16:02:14 +0000 (17:02 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I5b755219964c807f381973f14ad15f7806eb44ab

17 months agoAdd randomized constants to shaders in compare_link_times test
Slawomir Cygan [Mon, 14 Nov 2022 16:28:10 +0000 (17:28 +0100)]
Add randomized constants to shaders in compare_link_times test

Add some randomization to shaders in compare_link_times test
to get reproductible compilation times.

VK-GL-CTS Issue: 4109

Components: Vulkan

Affects:
dEQP-VK.pipeline.pipeline_library.graphics_library.misc.timing.compare_link_times

Change-Id: Idbd38d611edc955916b2c756115702cccd16a7d8

17 months agoFix invalid framebuffer in compressed texture 3D tests
ziga-lunarg [Sat, 10 Dec 2022 22:09:31 +0000 (23:09 +0100)]
Fix invalid framebuffer in compressed texture 3D tests

Framebuffer attachments must be created with viewType not equal to
VK_IMAGE_VIEW_TYPE_3D

Components: Vulkan

VK-GL-CTS issue: 4118

Affected tests:
dEQP-VK.texture.compressed_3D.*

Change-Id: I221fcc033266f8c344079f9ee9b1fa70c56d9dd9

17 months agoFix stencil op in depth bounds tests
ziga-lunarg [Mon, 5 Dec 2022 14:12:06 +0000 (15:12 +0100)]
Fix stencil op in depth bounds tests

If stencil attachment is in a read only layout and stencil test is
enabled, the stencil ops in VkPipelineDepthStencilStateCreateInfo must
be VK_STENCIL_OP_KEEP

Components: Vulkan

VK-GL-CTS issue: 4155

Affected tests:
dEQP-VK.dynamic_state.*.ds_state.depth_bounds_2*

Change-Id: Ifeb2ddca71e5cbd60afebd8d8b6dd77b5e7f2e9b

17 months agoFix result image format in RT pipeline flags test
Friedrich Vock [Mon, 5 Dec 2022 08:13:06 +0000 (09:13 +0100)]
Fix result image format in RT pipeline flags test

Tests were using an rgba32i format (VK_FORMAT_R32G32B32A32_SINT) but
declaring it in the shader as r32i.

Affects:
dEQP-VK.ray_tracing_pipeline.pipeline_no_null_shaders_flag.*

Components: Vulkan
VK-GL-CTS issue: 4151
VK-GL-CTS public issue: 365

Change-Id: Ia9dbd97544fce8a29a4fe7270fc617981648032f

17 months agoAdds missing multisample state structs.
Charlie Turner [Wed, 23 Nov 2022 21:35:05 +0000 (21:35 +0000)]
Adds missing multisample state structs.

When compiling a fragment shader pipeline library, the fragment shader
state is defined by, among other state, the
VkPipelineMultisampleStateCreateInfo if sample shading is enabled.

In the affected tests, a fragment shader module was being compiled
which accessed builtins decorated with SampleId. This in turn enabled
sample shading, and in such cases, the
VkPipelineMultisampleStateCreateInfo is potentially required by
drivers for their internal logic. For this reason the spec mandates
the struct's inclusion in the fragment shader state when sample
shading is enabled.

Unfortunately it's not simple to change the GraphicsPipelineWrapper to
avoid this erroneous configuration, since in general it would require
parsing the SPIR-V to check if the fragment shader is accessing any
input builtins with the problematic decorations.

Instead a validation run was done over
dEQP-VK.pipeline.pipeline_library.* to ensure there aren't other
callsites falling into this trap, and no other cases were found.

Components: Vulkan

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

VK-GL-CTS issue: 3975

Change-Id: I33a6b391af800eb6c23d846b70a4aac2387a74e3

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Piotr Byszewski [Fri, 16 Dec 2022 14:13:57 +0000 (15:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I2d8979c34c4b9a18509e5c00ba123fa2a7520451

17 months agoFix VK_KHR_global_priority tests
Andrew Fobel [Mon, 5 Dec 2022 21:16:01 +0000 (16:16 -0500)]
Fix VK_KHR_global_priority tests

Use enabledExtensions to properly enable VK_EXT_global_priority_query
along with passing the globalPriorityQueryFeatures struct.

Components: Vulkan

VK-GL-CTS issue: 4157

Affected tests:
dEQP-VK.api.device_init.create_device_global_priority*

Change-Id: Ib024f187f835914bbcb94e42a40d60a32fed0f99

17 months agoWork around deArraySizeHelper deficiency with multi-dimension arrays
Piers Daniell [Mon, 5 Dec 2022 22:01:43 +0000 (15:01 -0700)]
Work around deArraySizeHelper deficiency with multi-dimension arrays

This fixes a compilation issue with some compilers with deArraySizeHelper
and implicitly sized multi-dimensional arrays.

Affects:

Compilation only.

Components: Framework, Vulkan

VK-GL-CTS issue: 4158

Change-Id: Ie200647f34096b54544aff7f8d82b1eefabbd586

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Piotr Byszewski [Fri, 16 Dec 2022 12:35:27 +0000 (13:35 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Id3cf5e258bce8b7aec13bc44abdada774159136b

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Piotr Byszewski [Fri, 16 Dec 2022 11:15:18 +0000 (12:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Ifdc6f7c08ccb5f65d44e406a7dc6ea6866102ad5

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Piotr Byszewski [Fri, 16 Dec 2022 08:42:48 +0000 (09:42 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Ib14adccc08aa0dd8767e6dea0199e021885d292d

17 months agoFix errors in sparse resources tests
ziga-lunarg [Sat, 19 Nov 2022 13:02:59 +0000 (14:02 +0100)]
Fix errors in sparse resources tests

VK_EXT_shader_image_atomic_int64 extension must be enabled on the device
if used
Feature structs from non-enabled extensions must not be passed to
VkDeviceCreateInfo pNext
Checks if image formats are supported are missing

Components: Vulkan

VK-GL-CTS issue: 4122

Affected tests:
dEQP-VK.sparse_resources.shader_intrinsics.*

Change-Id: I4fcac8eae1d53826d5ef5f8a7dcc04bfe95f7360

17 months agoFix subpass dependency dstStageMask in shader_fragment_mask tests
ziga-lunarg [Fri, 18 Nov 2022 18:49:35 +0000 (19:49 +0100)]
Fix subpass dependency dstStageMask in shader_fragment_mask tests

Stage VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUT_BIT must be included if
access mask is VK_ACCESS_COLOR_ATTACHMENT_READ_BIT

Components: Vulkan

VK-GL-CTS issue: 4120

Affected tests:
dEQP-VK.pipeline.*.shader_fragment_mask.*

Change-Id: Iea2a62ff5781c50ad39d707a8eb0f1f4ce344f48

17 months agoSet correct pipeline barrier between clear image and trace ray
Yun Shu [Mon, 5 Dec 2022 08:20:43 +0000 (16:20 +0800)]
Set correct pipeline barrier between clear image and trace ray

The image is cleared with fixed value, then used as write destination
in ray tracing shaders. The pipeline barrier set for the image is
incorrect between clear command and trace ray command.

Affects:

dEQP-VK.ray_tracing_pipeline.large_shader_set.*

Components: Vulkan

VK-GL-CTS issue: 4137

Change-Id: I41dd55d51ea995c4c878e053f6d617b2e38ba5b1

17 months agoAdd check for the return value of vkGetPhysicalDeviceImageFormatProperties2
Amber [Mon, 21 Nov 2022 10:54:07 +0000 (11:54 +0100)]
Add check for the return value of vkGetPhysicalDeviceImageFormatProperties2

Also do not attempt to create images for depth/stencil usage using color formats.

Components: Vulkan

VK-GL-CTS issue: 4125

Affected tests:
dEQP-VK.api.external.memory.dma_buf.suballocated.image.info

Change-Id: If1f41b967d03f1b862c85277d6fe30b20ab1a110

17 months agoMerge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
Matthew Netsch [Mon, 12 Dec 2022 20:19:03 +0000 (20:19 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main

Change-Id: I6c10b7e95f3cbe7e67bba6b42515744f72793bb7

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Mon, 12 Dec 2022 19:26:52 +0000 (19:26 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: Id6c7c5596314ec9e71f3bbe066c13c2e15311dab

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Matthew Netsch [Mon, 12 Dec 2022 18:58:05 +0000 (18:58 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8

Change-Id: Ic173c93f035b93abbccffc972026a02ec3dfe924

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 8 Dec 2022 23:06:19 +0000 (23:06 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Idb97e283368a6bf5cd2532e2089083aee9ac6ef1

17 months agoCorrected shaders to draw uniform colors.
George Liu [Wed, 9 Nov 2022 07:55:45 +0000 (15:55 +0800)]
Corrected shaders to draw uniform colors.

For MSAA, the subsample of the pixel may be in the triangle, but the
center of the pixel is outside the triangle. This pixel depth may be out
of the depth range and gl_FragCoord.z is negative, especially when the
triangle is narrow and the depth gradient is large. This will draw an
unexpected black for the pixel after the calculation.

This only happens for configs that are not in the must-pass:
'--deqp-surface-width=3840 --deqp-surface-height=2160
--deqp-gl-config-name=rgba8888d24s8ms4'

Components: OpenGL ES
VK-GL-CTS issue: 4110
Affects: dEQP-GLES3.functional.occlusion_query.*

Change-Id: Ib92fe4b90e326bc8a313f123b1df1cdc4417f6d1

17 months agoAdd tests for 0 pWaitDstStageMask in VkSubmitInfo and events.
Amber [Fri, 11 Nov 2022 10:04:38 +0000 (11:04 +0100)]
Add tests for 0 pWaitDstStageMask in VkSubmitInfo and events.

VK-GL-CTS issue: 3904

Components: Vulkan

New tests:
dEQP-VK.synchronization2.basic.event.none_set_reset
dEQP-VK.synchronization2.basic.binary_semaphore.none_wait_submit

Change-Id: I54647969f51e2cb9f209b7a9d029bd3c83dbb822

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main
Matthew Netsch [Thu, 8 Dec 2022 22:01:49 +0000 (22:01 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main

Change-Id: Ibe3bafb476b2ce3a0b76a469b8c2de3c2952ea23

17 months agoRemove clearing of pipeline creation feedbacks while veryfying them
Slawomir Cygan [Tue, 22 Nov 2022 16:37:51 +0000 (17:37 +0100)]
Remove clearing of pipeline creation feedbacks while veryfying them

This re-enables verification of pipeline creation feedbacks by not
zeroing them out just before verification.

VK-GL-CTS Issue: 4129

Affects: dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.*

Components: Vulkan
Change-Id: I37010973db235f993b85e9ac3c2645ae5b2db79e

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Matthew Netsch [Thu, 8 Dec 2022 21:12:41 +0000 (21:12 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: Ieafa2f3085c673bd861f1e4ddff26897a16b43d9

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 8 Dec 2022 20:28:58 +0000 (20:28 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: Ie018c65908482fac3de9a6030d79029e2429d734

17 months agoFix to get supported depth format instead of using VK_FORMAT_D32_SFLOAT
Hyunjun Ko [Tue, 29 Nov 2022 05:09:41 +0000 (14:09 +0900)]
Fix to get supported depth format instead of using VK_FORMAT_D32_SFLOAT
always.

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

VK-GL-CTS Issue: 4142

Components: Vulkan
Change-Id: Ia8cb48061acd4813aecabb050c775a27ce1b4926

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 8 Dec 2022 19:57:31 +0000 (19:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I193ea9253a0d2d405e25d951ba1564f5ad805f3b

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 8 Dec 2022 18:58:13 +0000 (18:58 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Icc350abe29e7c1545a65d99884a281cd63239fc4

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 8 Dec 2022 18:30:33 +0000 (18:30 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Ibfc5624676bae49d9630978494cdfdc660a0fba4

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 8 Dec 2022 18:01:39 +0000 (18:01 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: If5512ea90e2442bc7304502d78cc3b1333f53479

17 months agoWrite gl_PointSize in depth tests
ziga-lunarg [Sun, 4 Dec 2022 20:48:26 +0000 (21:48 +0100)]
Write gl_PointSize in depth tests

Some depth tests use VK_PRIMITIVE_TOPOLOGY_POINT_LIST but the shaders
don't write the point size

Components: Vulkan

VK-GL-CTS issue: 4153

Affected tests:
dEQP-VK.pipeline.*.depth.*

Change-Id: Idaa9ea65f7c43ca02d7780d1825d4558b712a133

17 months agoAdd check if format is supported in external memory host tests
ziga-lunarg [Mon, 5 Dec 2022 15:34:50 +0000 (16:34 +0100)]
Add check if format is supported in external memory host tests

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

17 months agoFix invalid framebuffer in compressed texture 3D tests
ziga-lunarg [Fri, 18 Nov 2022 18:11:56 +0000 (19:11 +0100)]
Fix invalid framebuffer in compressed texture 3D tests

Framebuffer attachments must be created with viewType not equal to
VK_IMAGE_VIEW_TYPE_3D

Components: Vulkan

VK-GL-CTS issue: 4118

Affected tests:
dEQP-VK.texture.compressed_3D.*

Change-Id: I9ae036d02daa3579567bf514c70bf623a0bc9aa9

17 months agoFix flushing memory range in memory model shared tests
ziga-lunarg [Sat, 19 Nov 2022 19:06:44 +0000 (20:06 +0100)]
Fix flushing memory range in memory model shared tests

Each size of pMemRanges in vkFlushMappedMemoryRanges must be either a
multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize or equal to the
size of memory

Components: Vulkan

VK-GL-CTS issue: 4123

Affected tests:
dEQP-VK.memory_model.shared.*

Change-Id: I0f3ea96736aa73eb92c7809c04297923d84e348c

17 months agoAdd tests with primitive restart generating no primitives
ziga-lunarg [Tue, 1 Nov 2022 18:43:21 +0000 (19:43 +0100)]
Add tests with primitive restart generating no primitives

If a primitive restart occurs while there's not enough vertices
specified to generate a primitive, the primitive should be dropped

Components: Vulkan

VK-GL-CTS issue: 3742

New tests:
dEQP-VK.pipeline.*.input_assembly.primitive_restart.*.restart_all_*

Change-Id: I3d1c2ca93cb2b0fd8c41faad2b07be8dd2b7b240

17 months agoAdd tests for VK_EXT_extended_dynamic_state3
Ricardo Garcia [Fri, 2 Dec 2022 16:47:13 +0000 (17:47 +0100)]
Add tests for VK_EXT_extended_dynamic_state3

This commit adds tests for every new dynamic state present in the
extension above.

New tests:
dEQP-VK.pipeline.*.extended_dynamic_state.*logic_op_enable*
dEQP-VK.pipeline.*.extended_dynamic_state.*logic_op_disable*
dEQP-VK.pipeline.*.extended_dynamic_state.*color_blend*
dEQP-VK.pipeline.*.extended_dynamic_state.*tess_domain_origin*
dEQP-VK.pipeline.*.extended_dynamic_state.*depth_clamp*
dEQP-VK.pipeline.*.extended_dynamic_state.*polygon_mode*
dEQP-VK.pipeline.*.extended_dynamic_state.*sample_mask*
dEQP-VK.pipeline.*.extended_dynamic_state.*alpha_to_coverage*
dEQP-VK.pipeline.*.extended_dynamic_state.*alpha_to_one*
dEQP-VK.pipeline.*.extended_dynamic_state.*color_write_mask*
dEQP-VK.pipeline.*.extended_dynamic_state.*rasterization_stream*
dEQP-VK.pipeline.*.extended_dynamic_state.*provoking_vertex*
dEQP-VK.pipeline.*.extended_dynamic_state.*negative_one_to_one*
dEQP-VK.pipeline.*.extended_dynamic_state.*depth_clip_enable*
dEQP-VK.pipeline.*.extended_dynamic_state.*line_stipple*
dEQP-VK.pipeline.*.extended_dynamic_state.*sample_locations*
dEQP-VK.pipeline.*.extended_dynamic_state.*conservative_rasterization*
dEQP-VK.pipeline.*.extended_dynamic_state.*extra_overestimation*
dEQP-VK.pipeline.*.extended_dynamic_state.*line_raster_mode*
dEQP-VK.pipeline.*.extended_dynamic_state.*coverage_to_color*
dEQP-VK.pipeline.*.extended_dynamic_state.*coverage_modulation*
dEQP-VK.pipeline.*.extended_dynamic_state.*coverage_reduction*
dEQP-VK.pipeline.*.extended_dynamic_state.*viewport_swizzle*
dEQP-VK.pipeline.*.extended_dynamic_state.*shading_rate_image*
dEQP-VK.pipeline.*.extended_dynamic_state.*viewport_w_scaling*
dEQP-VK.pipeline.*.extended_dynamic_state.*repr_frag_*
dEQP-VK.pipeline.*.extended_dynamic_state.*repr_frag_*
dEQP-VK.pipeline.*.extended_dynamic_state.*rasterization_samples*
dEQP-VK.api.*.extended_dynamic_state3_features_ext

Removed tests:
dEQP-VK.pipeline.*.extended_dynamic_state.*prim_restart_disable*
dEQP-VK.pipeline.*.extended_dynamic_state.*prim_restart_enable_on_both*

Affected tests:
dEQP-VK.pipeline.*.extended_dynamic_state.*

VK-GL-CTS issue: 3825
Components: Framework, Vulkan

Change-Id: I7cb6be852ceeedb6bb68590f88c5c5dd025c8eff

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Fri, 2 Dec 2022 21:02:49 +0000 (21:02 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: I99863bd4f3d359079760701be6c07338c9a6fa5f

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Matthew Netsch [Fri, 2 Dec 2022 20:34:16 +0000 (20:34 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8

Change-Id: I324c55e03130e091a01cefb3f766bb37f03bae9a

17 months agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Fri, 2 Dec 2022 19:56:58 +0000 (19:56 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ie932aa95ec8eee342a4e129e405b22b7a10a0a89

17 months agoMerge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main
Matthew Netsch [Fri, 2 Dec 2022 17:36:57 +0000 (17:36 +0000)]
Merge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main

Change-Id: I09b99afd2868b5b4b63f6aaebc6c36e5cbc1ff27

17 months agoRemove custom instances from robustness index access tests
Ricardo Garcia [Fri, 2 Dec 2022 12:16:22 +0000 (13:16 +0100)]
Remove custom instances from robustness index access tests

They had recently been removed from other robustness tests before the
robustness index access tests were merged, and this caused build issues.

Affects:
dEQP-VK.robustness.index_access.*
dEQP-VK.info.device_mandatory_features

Components: Vulkan
VK-GL-CTS issue: 3670

Change-Id: I8f51d1fc779bac30478dc6211369e578c047d0e1

17 months agoReduce number of command pools in texel_view_compatible tests
Jeff Bolz [Fri, 11 Nov 2022 20:19:05 +0000 (14:19 -0600)]
Reduce number of command pools in texel_view_compatible tests

We were seeing an average of around 10 pools per test,
which can be problematic in VulkanSC.

Components: Vulkan, VulkanSC
Affects: dEQP-VK.image.texel_view_compatible.*
Change-Id: I0921d259a06803a8a817910b8ffcb30956b709f9

17 months agoFix uninitialized blendConstants in ColorBlendState
Lionel Landwerlin [Thu, 10 Nov 2022 10:01:27 +0000 (12:01 +0200)]
Fix uninitialized blendConstants in ColorBlendState

Components: Vulkan

VK-GL-CTS issue: 4094

Affects:
dEQP-VK.draw.*
dEQP-VK.dynamic_state.*
dEQP-VK.pipeline.*
dEQP-VK.query_pool.*

Change-Id: Ia39d960e0809420b9755c4242510c657fcf7838b

17 months agoAdd missing extension checks in extended dynamic state tests
ziga-lunarg [Fri, 18 Nov 2022 15:35:25 +0000 (16:35 +0100)]
Add missing extension checks in extended dynamic state tests

A check for VK_EXT_index_type_uint8 is missing when index buffer is used
in extended dynamic state tests and a check for VK_EXT_mesh_shader when
mesh shaders are used

Components: Vulkan

VK-GL-CTS issue: 4117

Affected tests:
dEQP-VK.pipeline.*.extended_dynamic_state.*

Change-Id: I90d783f3f7e3c73aea9f5f89f59d5c3b093e3320

17 months agoEnsure robustness for OOB index buffer accesses
Piotr Byszewski [Thu, 15 Sep 2022 15:56:45 +0000 (17:56 +0200)]
Ensure robustness for OOB index buffer accesses

Test out of bounds firstIndex parameter
passed to vkCmdDrawIndexed, vkCmdDrawIndexedIndirect,
vkCmdDrawIndexedIndirectCount and vkCmdDrawMultiIndexedEXT.

VK-GL-CTS issue: 3670

Components: Vulkan

New tests:
dEQP-VK.robustness.index_access.*

Change-Id: I9f6a8b7c15b7c5a2b1ad0edd71d2f4eccea00dad

17 months agoTest creating device with promoted feature structures
ziga-lunarg [Thu, 10 Nov 2022 11:47:31 +0000 (12:47 +0100)]
Test creating device with promoted feature structures

Create device with structures from promoted extensions in the pNext
chain of VkDeviceCreateInfo, even when the extensions are not supported

Components: Vulkan

VK-GL-CTS issue: 4071

New tests:
dEQP-VK.api.info.get_physical_device_properties2.features.create_device_with_promoted11_structures
dEQP-VK.api.info.get_physical_device_properties2.features.create_device_with_promoted12_structures
dEQP-VK.api.info.get_physical_device_properties2.features.create_device_with_promoted13_structures

Change-Id: Ifc5fa05635b7363dad727bd2390db10cdef35d88

17 months agoAvoid passing unsupported structs in mandatory features test
Ricardo Garcia [Mon, 21 Nov 2022 12:41:46 +0000 (13:41 +0100)]
Avoid passing unsupported structs in mandatory features test

Before checking mandatory features, the list of available features is
queried from the physical device using a pNext chain. When adding
structures to the chain, the code was not properly verifying the
structure could be used according to the supported extensions and core
Vulkan version.

Affects:
dEQP-VK.info.device_mandatory_features

VK-GL-CTS issue: 4093
Components: Vulkan

Change-Id: I929b4503f7d0a09c513d0638e05ae61b6f70bb77

17 months agoAdds coverage for gl_PrimitiveID implicit passthrough with GPL.
Charlie Turner [Tue, 15 Nov 2022 18:01:21 +0000 (18:01 +0000)]
Adds coverage for gl_PrimitiveID implicit passthrough with GPL.

Add new pipeline tests which use gl_PrimtiveID in the fragment shader,
when access to that built-in is allowed implicitly.

From the spec,

"In a fragment shader, it will contain the primitive index written by
the mesh shader if a mesh shader is present, or the primitive index
written by the geometry shader if a geometry shader is present, or
with the value that would have been presented as input to the geometry
shader had it been present."

The new tests cover the cases without mesh or geometry shaders, where
the builtin is implicit.

These tests have been validated to cover the issue fixed by,

https://gitlab.freedesktop.org/mesa/mesa/-/commit/0c6f52a999f34e936aa61eb3527a19979da1ff8c

in the Mesa radv driver.

New Tests:

dEQP-VK.pipeline.monolithic.misc.implicit_primitive_id
dEQP-VK.pipeline.monolithic.misc.implicit_primitive_id_with_tessellation
dEQP-VK.pipeline.pipeline_library.misc.implicit_primitive_id
dEQP-VK.pipeline.pipeline_library.misc.implicit_primitive_id_with_tessellation
dEQP-VK.pipeline.fast_linked_library.misc.implicit_primitive_id
dEQP-VK.pipeline.fast_linked_library.misc.implicit_primitive_id_with_tessellation

VK-GL-CTS issue: 3932

Change-Id: I25f10a98e27019618b1caaa61f0a4e5e75f36564

17 months agoAvoid using custom instances in robustness tests
Ricardo Garcia [Mon, 28 Nov 2022 12:20:50 +0000 (13:20 +0100)]
Avoid using custom instances in robustness tests

Some robustness custom devices are created with a large amount of
enabled extensions and features, using the default device as a
reference. Some drivers may expose or hide different device extensions
depending on the enabled instance extensions.

This means if we use a custom instance with no extensions and try to
enable everything that's available on the default device, device
creation may fail unexpectedly. This can be solved in two ways:

* Create the custom instance with the same extensions as the default
  instance.

* Avoid creating a custom instance at all and reuse the context
  instance.

This commit opts for the second option. Creating a custom instance is
rarely useful. The focus of robustness tests in on creating a custom
device with robustness features.

In addition, this commit also fixes some cases where the code was mixing
the context DeviceInterface with custom devices, and fixes validation
errors caused by the tests failing to enable shaderInt64 or vert/frag
stores and atomics in cases they were needed.

Affects:
dEQP-VK.robustness.*
dEQP-VKSC.robustness.*

VK-GL-CTS issue: 4136
Components: Vulkan

Change-Id: I820f8932e74100f01dba397ccf9eac24042ce33d

17 months agoAllow override of wayland-scanner executable
Maíra Canal [Thu, 24 Nov 2022 09:52:39 +0000 (10:52 +0100)]
Allow override of wayland-scanner executable

When cross-compiling, if the environment variables
PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR are set to the target
sysroot, the wayland_scanner executable won't be found and the
compilation will fail as the xdg-shell header cannot be generated.
Therefore, allow overriding the wayland-scanner executable so that an
alternative executable can be provided with the variable
WAYLAND_SCANNER.

VK-GL-CTS issue: 4139
Components: Framework

Change-Id: I7848a353e93dd07638afadada9c3e0b96ffb5406

17 months agoAdd VK_NULL_HANDLE definition to vkDefs.hpp
Ricardo Garcia [Thu, 1 Dec 2022 12:26:33 +0000 (13:26 +0100)]
Add VK_NULL_HANDLE definition to vkDefs.hpp

VK_NULL_HANDLE was notably missing for usage in CTS tests, and in most
of them it was being replaced by DE_NULL, which in the past also doubled
as NULL and nullptr.

Since VK-GL-CTS was updated to support C++11, nullptr was available as a
more natural way of using null pointers, but DE_NULL still had to be
used as the VK_NULL_HANDLE replacement.

This commit defines VK_NULL_HANDLE to be DE_NULL, which is known to
work, and makes its definition available globally as expected.

No test results should be affected.

VK-GL-CTS issue: 1701
Components: Vulkan

Change-Id: I188ab0ae8764ba25be38048479d62831909fbe29

17 months agoAdd tests for buffer device address with buffers bound at offset
Hyunjun Ko [Fri, 25 Nov 2022 00:35:49 +0000 (09:35 +0900)]
Add tests for buffer device address with buffers bound at offset

New tests:
dEQP-VK.binding_model.buffer_device_address.*.single.*_offset_nonzero

VK-GL-CTS Issue: 4066

Components: Vulkan
Change-Id: I64db81d4dea0c6a9b17a38962a88936383a85e5b

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main
Matthew Netsch [Thu, 1 Dec 2022 22:48:34 +0000 (22:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main

Change-Id: I059d04b53e298faae545f0fca96fee1715ca21de

17 months agoFix errors in dynamic rendering suballocation tests
ziga-lunarg [Sun, 13 Nov 2022 15:41:10 +0000 (16:41 +0100)]
Fix errors in dynamic rendering suballocation tests

attachmentCount in vkCmdClearAttachments must be greater than 0
depth aspect must only be cleared if depth attachment is set
stencil aspect must only be clear if stencil attachment is set

Components: Vulkan

VK-GL-CTS issue: 4102

Affected tests:
dEQP-VK.dynamic_rendering.*.suballocation.*

Change-Id: Id7cc51794883863aa9add62adee55ef30c0f6a28

17 months agoFixes for VK_EXT_image_compression_control swapchain tests
Marc Alcala Prieto [Fri, 18 Nov 2022 15:24:34 +0000 (16:24 +0100)]
Fixes for VK_EXT_image_compression_control swapchain tests

Ensure VK_KHR_get_surface_capabilities2 is requested when creating
Vulkan instances for the swapchain tests. This is required by
functions:
- vkGetPhysicalDeviceSurfaceCapabilities2KHR
- vkGetPhysicalDeviceSurfaceFormats2KHR

Enable imageCompressionControlSwapchain when creating devices for the
swapchain tests.

Properly set compressionControlPlaneCount depending on compression
flags.

Components: Vulkan

VK-GL-CTS issue: 4105

Affects:
dEQP-VK.api.image_compression_control.swapchain.*

Change-Id: I6b1ac25724ac605b91824e784a018f3e4fd717b7

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Matthew Netsch [Thu, 1 Dec 2022 22:00:51 +0000 (22:00 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: I4d3f1c8018aa246031409d52a6aa6716a95a67c7

17 months agoFixes for VK_EXT_image_compression_control tests
Marc Alcala Prieto [Fri, 18 Nov 2022 15:10:41 +0000 (16:10 +0100)]
Fixes for VK_EXT_image_compression_control tests

Fix the validation logic to check planes depending on format, not
compressionControlPlaneCount.

Properly set compressionControlPlaneCount and
pFixedRateFlags depending on compression flags.

Components: Vulkan

VK-GL-CTS issue: 4105

Affects:
dEQP-VK.api.image_compression_control.*

Change-Id: I492febb4163867ee722cd49e75cc8646aa8376f5

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 1 Dec 2022 20:14:56 +0000 (20:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: Ibbddec7b6ff3801fef7d359eb08935808a7cfe65

17 months agoUse pipeline layout alongside with fragment shader stage
Slawomir Cygan [Thu, 10 Nov 2022 16:12:05 +0000 (17:12 +0100)]
Use pipeline layout alongside with fragment shader stage

In pipeline libraries, pipeline layout is requried if fragment
shader is present in the pipeline.

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

VK-GL-CTS Issue: 4096

Components: Vulkan
Change-Id: Ia70b0f18f497e2e9102e7748c87ea5e5092098bc

17 months agoFix color blend state color attachments in depth tests
ziga-lunarg [Sat, 12 Nov 2022 00:13:43 +0000 (01:13 +0100)]
Fix color blend state color attachments in depth tests

The number of color attachment in pColorBLendState must match the number
of color attachment in the subpass when creating the pipeline

Components: Vulkan

VK-GL-CTS issue: 4058

Affected tests:
dEQP-VK.pipeline.*.depth.*

Change-Id: Ibce5ff044c0804218d56d452eea7973c4c3a2990

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 1 Dec 2022 18:29:04 +0000 (18:29 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I699095999ad69b1ce79e50c3db6a06410005bdb5

17 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 1 Dec 2022 17:33:11 +0000 (17:33 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Iacdc3192254c41c569dbad94d8025b936f93cc25

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 1 Dec 2022 17:05:02 +0000 (17:05 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I7a7605b2dffeaedac543e32d97f13f552d6ab68f

17 months agoRe-add texture filtering tests with rgba10x6 format
ziga-lunarg [Fri, 4 Nov 2022 22:56:17 +0000 (23:56 +0100)]
Re-add texture filtering tests with rgba10x6 format

These tests were removed when only the check for
formatRgba10x6WithoutYCbCrSampler feature was missing

Components: Vulkan

VK-GL-CTS issue: 3646

New tests:
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_nearest
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_linear
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_nearest_mipmap_nearest
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_linear_mipmap_nearest
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_nearest_mipmap_linear
dEQP-VK.texture.filtering.3d.formats.r10x6g10x6b10x6a10x6_unorm.r10x6g10x6b10x6a10x6_unorm_linear_mipmap_linear

Change-Id: Ida3cb9f1abd95f57908b9540c65605cbb1b40fa3

17 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 1 Dec 2022 16:37:27 +0000 (16:37 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I36f8b8142517f82d581ee2bc365a97ff37a63dc8

17 months agoFix invalid usage of descriptorCount for inline uniform
Hyunjun Ko [Wed, 23 Nov 2022 08:46:24 +0000 (17:46 +0900)]
Fix invalid usage of descriptorCount for inline uniform
 blocks.

Affects:
dEQP-VK.binding_model.descriptorset_random.*.iublimit*

VK-GL-CTS Issue: 4115

Components: Vulkan

Change-Id: I649d86b859ca642b47c1fda4aa915e1d6616c898

17 months agoFix of missing processEvent call
rpatlega [Thu, 1 Dec 2022 14:51:31 +0000 (20:21 +0530)]
Fix of missing processEvent call

Adding processEvent will ensure window message to be processed before read.

Affects:
dEQP-EGL.functional.native_color_mapping.native_window.*

VK-GL-CTS issue: 4148
Components: EGL

Change-Id: Ib81c50e7442decb0ccdfbe3b93cb03f3e0eb09fb

17 months agoFix for 16 to 8-bit storage spirv_assembly tests
Gary Sweet [Thu, 24 Nov 2022 09:16:09 +0000 (09:16 +0000)]
Fix for 16 to 8-bit storage spirv_assembly tests

The output buffer was being made smaller than it was required to
hold all the results. Robust buffer accesss prevented the writes
from trampling memory after the buffer, but could mean that the
data in the valid part of the buffer was incorrectly written instead.

This change makes the output buffer large enough to prevent the
out-of-bounds writes.

Components: Vulkan

VK-GL-CTS issue: 4126

Affected tests:
dEQP-VK.spirv_assembly.instruction.graphics.8bit_storage.storagebuffer_int_16_to_8.*

Change-Id: I59145be8012f7a31037ee3fee4d7ac96a198bc00

17 months agoMerge vk-gl-cts/dev/VK_EXT_mutable_descriptor_type into vk-gl-cts/main
Matthew Netsch [Mon, 21 Nov 2022 18:19:02 +0000 (10:19 -0800)]
Merge vk-gl-cts/dev/VK_EXT_mutable_descriptor_type into vk-gl-cts/main

Change-Id: I122066282bff61b7e0f9877f1dd49825f3fd7ad0

17 months agoMerge "Merge vk-gl-cts/dev/VK_EXT_descriptor_buffer into vk-gl-cts/main" into main
Matthew Netsch [Mon, 21 Nov 2022 17:47:44 +0000 (17:47 +0000)]
Merge "Merge vk-gl-cts/dev/VK_EXT_descriptor_buffer into vk-gl-cts/main" into main

17 months agoMake application_parameters tests fail without vendor-specific info
Daniel Koch [Sat, 19 Nov 2022 00:19:51 +0000 (19:19 -0500)]
Make application_parameters tests fail without vendor-specific info

VK-GL-CTS issue: 4018

The "invalid_param_value" and "valid" test variants need vendor-specific
values to be added to the test case. Previously this reported "unsupported"
if the necessary values aren't added. It was believe this could be easily
missed by vendors, so changing this to an error as agreed.

Note that with this change, if an implementation supportsi
VK_EXT_application_parameters and does nothing else - there will be 4 failures.

Component: VulkanSC
Affects: dEQP-VKSC.sc.application_parameters.*

Change-Id: I76a1901cc15e0966ffdd00a817aebbeb72f7d019

17 months agoMerge vk-gl-cts/dev/VK_EXT_descriptor_buffer into vk-gl-cts/main
Matthew Netsch [Fri, 18 Nov 2022 22:32:10 +0000 (14:32 -0800)]
Merge vk-gl-cts/dev/VK_EXT_descriptor_buffer into vk-gl-cts/main

Change-Id: I47666bffd91171831a2d70f1255ae734c77b016d

17 months agoUpdate json files for postmortem features
Matthew Netsch [Fri, 18 Nov 2022 20:23:15 +0000 (12:23 -0800)]
Update json files for postmortem features

VK_EXT_device_fault
VK_EXT_device_address_binding_report

Components: Vulkan, Framework

Affects:
dEQP-VK.info.device_mandatory_features

Change-Id: I03656cbcbfa5590aafb3924aae5f8a8cf65a8a67

17 months agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_descriptor_buffer
Matthew Netsch [Fri, 18 Nov 2022 19:58:19 +0000 (11:58 -0800)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_descriptor_buffer

Change-Id: I1c683c0c22144608db97c92800e0286d8ab8e31c

17 months agoMerge vk-gl-cts/dev/VK_EXT_device_address_binding_report into vk-gl-cts/main
Matthew Netsch [Fri, 18 Nov 2022 19:54:37 +0000 (11:54 -0800)]
Merge vk-gl-cts/dev/VK_EXT_device_address_binding_report into vk-gl-cts/main

Change-Id: I76503d225080aff00f0d03ece7eedad53c4aa8ea

17 months agoMerge vk-gl-cts/dev/VK_EXT_device_fault into vk-gl-cts/main
Matthew Netsch [Fri, 18 Nov 2022 19:53:07 +0000 (11:53 -0800)]
Merge vk-gl-cts/dev/VK_EXT_device_fault into vk-gl-cts/main

Change-Id: I8820ba1ecc1039d9f6006eed0ff2ff9bee2a3cab

17 months agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_mutable_descriptor_type
Matthew Netsch [Fri, 18 Nov 2022 19:36:33 +0000 (11:36 -0800)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_mutable_descriptor_type

Change-Id: I544a1dc547da78ecc05e44ed1a826eb778dd70b8

17 months agoMerge vk-gl-cts/main into vk-gl-cts/VK_EXT_device_address_binding_report
Matthew Netsch [Fri, 18 Nov 2022 18:14:27 +0000 (10:14 -0800)]
Merge vk-gl-cts/main into vk-gl-cts/VK_EXT_device_address_binding_report

Change-Id: Ife39cfbc2aff1eaa88d4006969c911a67b474299

17 months agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_device_fault
Matthew Netsch [Fri, 18 Nov 2022 17:29:12 +0000 (09:29 -0800)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_device_fault

Change-Id: I9aaf9f104f8edea608db8f888e59243e07604852

17 months agoFix for the string query tests on desktop GL
Tapani Pälli [Fri, 28 Oct 2022 11:22:16 +0000 (14:22 +0300)]
Fix for the string query tests on desktop GL

Affects:
dEQP*functional.state_query.string.*

Components: OpenGL
VK-GL-CTS issue: 3761

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I1b2a81a54f048bea057a32f3426dc4af02bd54d7

17 months agoAdd tests for out-param aliasing against other variables
Aitor Camacho [Thu, 20 Oct 2022 11:11:11 +0000 (13:11 +0200)]
Add tests for out-param aliasing against other variables

VK-GL-CTS Issue: 3658

New tests:
*.function.*

Components: OpenGL, OpenGL ES
Change-Id: I1443b77db7eb8f6b7182a1c49bd656c79d7e8e67

17 months agoFix a typo setupVertexInputStete -> setupVertexInputState
Charlie Turner [Mon, 14 Nov 2022 22:41:46 +0000 (22:41 +0000)]
Fix a typo setupVertexInputStete -> setupVertexInputState

Components: Vulkan, Framework

Change-Id: I7a3a1a5310f330874f5fc0d27b75ef9de3ada774

17 months agoImprove failure error messages in format_feature_flags2 tests
Ricardo Garcia [Fri, 11 Nov 2022 12:54:55 +0000 (13:54 +0100)]
Improve failure error messages in format_feature_flags2 tests

They didn't report the problematic bits on failures, which made it hard
to debug. This commit prints the missing bits in hex form, which can be
easily looked up in the specification text.

Affects:
dEQP-VK.api.format_feature_flags2.*

VK-GL-CTS issue: 4099
Components: Vulkan

Change-Id: I4472668a0dcf5a52fb3b33c48c69e674e4aa4998

17 months agoAdd tests for linearly tiled images
Amber [Mon, 14 Nov 2022 09:31:00 +0000 (10:31 +0100)]
Add tests for linearly tiled images

Ensure that stores, loads and atomic operations
work.

VK-GL-CTS issue: 3988

Components: Vulkan

New tests:
dEQP-VK.image.atomic_operations.*.*.*.*.*.*_linear
dEQP-VK.image.load_store.*.*.*_linear
dEQP-VK.image.store.*.*.*_linear

Change-Id: Ifbce630431d3f7c183a91d91a89b8d6aea64d10c