Ricardo Garcia [Wed, 20 Jul 2022 09:57:38 +0000 (11:57 +0200)]
Avoid using empty descriptor set layouts with libraries
When creating pipeline libraries, the different pipeline layouts need to
be combined on a union of pipeline layouts, and sets not used for a
particular library can be VK_NULL_HANDLE when those pipeline layouts are
created with VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT.
Some of the pipeline library tests are using empty descriptor sets
instead of null handles for this case, breaking some drivers.
Affected tests:
dEQP-VK.pipeline.pipeline_library.graphics_library.*
VK-GL-CTS issue: 3584
Components: Vulkan
Change-Id: I6ee66f5d350bf586ac680f222ac5e426cb36a2e5
Matthew Netsch [Thu, 28 Jul 2022 19:55:59 +0000 (19:55 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Change-Id: I55ea5df83f5be721690df56e52a32c9281761077
ziga-lunarg [Mon, 20 Jun 2022 16:21:43 +0000 (18:21 +0200)]
Add missing required extension in pageable allocation tests
Extension VK_EXT_pageable_device_local_memory requires
VK_EXT_memory_priority
Components: Vulkan
VK-GL-CTS issue: 3783
Affects:
dEQP-VK.memory.pageable_allocation.*
Change-Id: Ib29a5d908549d64342dc186c19ce533dec953d3f
Matthew Netsch [Thu, 28 Jul 2022 19:31:30 +0000 (19:31 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I501ed2d53ae848c8c6fcf0f674cdb4d28202a04d
Matthew Netsch [Thu, 28 Jul 2022 18:59:20 +0000 (18:59 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I9d6e9415440bdafefb45374e021e47041dd4e237
Aidan Fabius [Mon, 25 Jul 2022 15:34:52 +0000 (11:34 -0400)]
Re-enable fence, event, barrier, and binary semaphore tests when timeline semaphores aren't supported
Components: Vulkan
VK-GL-CTS issue: 3847
Affects:
dEQP-VKSC.synchronization.op.*
dEQP-VKSC.synchronization2.op.*
dEQP-VK.synchronization.op.*
dEQP-VK.synchronization2.op.*
Change-Id: I95a0073b291f9288dcd2efae4a3302b3c98558a3
Matthew Netsch [Thu, 28 Jul 2022 18:29:57 +0000 (18:29 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I1353fd5c9aef95c5f0b776ffbd3bf5a1c252c0f1
Piotr Byszewski [Tue, 19 Jul 2022 10:48:15 +0000 (12:48 +0200)]
Handle latest Wayland version
CTS used a deprecated protocol wl_shell, which has been replaced
in Ubuntu 22.04 by xdg-shell. This change replaces all wl_shell
calls with corresponding xdg-shell calls.
Note that xdg-shell is a protocol and in wayland-protocols repository
we have only xml that defines this protocol. wayland-scanner tool is
used to generate the .h and .c files in build directory.
VK-GL-CTS issue: 3774
Components: Vulkan
Affects:
*
dEQP-VK.image.swapchain_mutable.wayland*
dEQP-VK.wsi.wayland.swapchain.*
dEQP-VK.wsi.wayland.incremental_present.*
Change-Id: I44879d9eb072dbfa5e172eaac81968e65e8a276c
Matthew Netsch [Thu, 28 Jul 2022 18:02:44 +0000 (18:02 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I467ac13c25862ebfd2f1844e9e6574796cdc3f66
Arkadiusz Sarwa [Tue, 26 Jul 2022 14:48:51 +0000 (16:48 +0200)]
Fix barrier VK_AMD_buffer_marker tests
Affected tests:
dEQP-VK.api.buffer_marker.*
Components: Vulkan
VK-GL-CTS issue: 3854
Change-Id: I92571c00f1392652684ece1d4bbfb8122367e3ce
Piers Daniell [Wed, 13 Jul 2022 23:39:25 +0000 (17:39 -0600)]
Fix the gl_TessLevelInner values in depth_bias_patch_list_tri_point.amber
This problem was unique to this amber file. The others in this folder
were already correct.
Affects:
dEQP-VK.draw.renderpass.depth_bias.depth_bias_patch_list_tri_point
Components: Vulkan
VK-GL-CTS issue: 3829
Change-Id: I6744a40f1bd7c927ea533dd9260ea1d56fb7c79a
Marcin Kańtoch [Thu, 14 Jul 2022 12:34:49 +0000 (14:34 +0200)]
graphics_pipeline_library missing on extension list
Test cases dEQP-VK.pipeline.fast_linked_library.* don't add
VK_EXT_graphics_pipeline_library into extension list
although it is using fast-link.
Component: Vulkan
VK-GL-CTS Issue: 3811
Affected tests:
dEQP-VK.pipeline.fast_linked_library.*
Change-Id: I6a12ee415b5be52671b0ce24b2f67f19e0c8b802
Matthew Netsch [Thu, 21 Jul 2022 17:40:00 +0000 (17:40 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Change-Id: I65295c4d9556742620ca49023dbf6389b957569d
Sai Kiran Korwar [Wed, 6 Jul 2022 10:43:34 +0000 (16:13 +0530)]
Fix vkwsi Display control tests
Tests that attempt to interact with display via the display
control extension must not be run when other windowing systems
have display access.
Return NotSupported if Display is unavailable because the
windowing system has access.
Affects:
dEQP-VK.wsi.display_control.display_power_control
dEQP-VK.wsi.display_control.register_display_event
Components: Vulkan
VK-GL-CTS issue: 3804
Change-Id: I59b78cf1dc8089d1741e1b23bc7391d30c85bebd
Matthew Netsch [Thu, 21 Jul 2022 17:15:10 +0000 (17:15 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I654e931f5f841201dc2f4d0d80c6edb7357ac90f
Matthew Netsch [Thu, 21 Jul 2022 16:44:06 +0000 (16:44 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I70f2eff0aee69bc3ed882d1ad4f6fc9ffb4b10b6
Matthew Netsch [Tue, 5 Jul 2022 20:21:31 +0000 (13:21 -0700)]
Limits buffer size to vulkan limit
Test was allocating buffer size larger than
sparseAddressSpace
Components: Vulkan
VK-GL-CTS Issue: 3803
Affects:
dEQP-VK.api.buffer.basic
Change-Id: Ia5a421c11804b60f05557d75e2140f1b2afb4c66
Matthew Netsch [Thu, 21 Jul 2022 16:12:34 +0000 (16:12 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ie7d7c989b3c81202f9e9dd2454b6087aa7cc49e1
michal_jakubek [Wed, 6 Jul 2022 04:17:26 +0000 (06:17 +0200)]
Fix for different values of subTexelPrecisionBits.
Affects: dEQP-VK.texture.conversion.snorm_clamp_linear.*
Components: Vulkan
VK-GL-CTS issue: 3724
Change-Id: I5ec839ea8169aa5749f6ff9e7b80298a475d6207
Matthew Netsch [Thu, 21 Jul 2022 15:45:40 +0000 (15:45 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I25a2d0cdd0a876568dede576e384d9ff8d1b93ea
Graeme Leese [Mon, 6 Jun 2022 14:00:35 +0000 (15:00 +0100)]
Backport CMake library change from master
Following the VKSC update the syntax used for CMake link libraries
includes a visibility specifier. Because CMake requires that all uses of
this command on a single target are consistent (either all with or all
without the specifier), having this mismatch between main and the
release branches creates an integration problem, so this backports that
part of the change. The qualifier added here is both the value used in
later changes and the default if nothing is specified, so the effect of
this change should be minimal.
Components: All (CMake build only)
Change-Id: I1c7e850d52de3cc0493a47bf36ad35bd55b05184
Jeff Bolz [Fri, 15 Jul 2022 15:47:38 +0000 (10:47 -0500)]
Fix imprecise occlusion query inheritance tests
Out of the four combinations of {precise query, imprecise query} X
{precise inheritance info, imprecise inheritance info}, three
combinations are valid under VUID-vkCmdExecuteCommands-commandBuffer-00103.
The two test cases that were supposed to use imprecise queries were
using precise.
Affects: dEQP-VK.api.command_buffers.record_query_imprecise*
Components: Vulkan
Change-Id: Idc8ceb2cf2d978c24c60c36ffa3406d9d16b55e6
Jeff Bolz [Tue, 19 Jul 2022 13:59:55 +0000 (08:59 -0500)]
Fix invalid usage in descriptor_indexing.input_attachment tests
Input attachments are only supported in the fragment stage. Tweak the
descriptorbinding's stageFlags to follow this rule.
Affects: dEQP-VK.descriptor_indexing.*
Components: Vulkan, VulkanSC
VK-GL-CTS Issue: 3840
Change-Id: Id6a2fac8563bfb8a83b71cc9dd0428fe9e3c46a6
Joe Withers [Thu, 7 Jul 2022 13:41:17 +0000 (14:41 +0100)]
Fix unused result in OpPtrEqual OpPtrNotEqual tests
These tests were storing the result of a prior comparison, instead of
the result of the final "Pointers to individual columns of row-major
matrices" test.
Components: Vulkan
Affects:
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrequal.simple_variable_pointers_ptr_equal
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrnotequal.simple_variable_pointers_ptr_not_equal
Change-Id: I0320d887b1f9701037e7df6a605e51236892bbd8
Matthew Netsch [Fri, 15 Jul 2022 15:46:36 +0000 (15:46 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Change-Id: I4746c7728a783911f57a4a0307355384e5782e1f
wu jingxiang [Wed, 29 Jun 2022 10:06:00 +0000 (10:06 +0000)]
Modify Store Op setting
Set up VK_ATTACHMENT_LOAD_OP_DONT_CARE on VkAttachmentStoreOp. If m_numRenderPass equal 1.
Set up VK_ATTACHMENT_LOAD_OP_STORE on VkAttachmentStoreOp. If m_numRenderPass is greater than 1.
Affects:
dEQP-VK.renderpass2.depth_stencil_resolve.*
Components: Vulkan
Change-Id: I226336ee9eeac5a9db14817cc8d1bec2f881ebbb
Matthew Netsch [Fri, 15 Jul 2022 15:22:13 +0000 (15:22 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I860e6b43aca52008fecc755bd0a377dca99e8927
Matthew Netsch [Fri, 15 Jul 2022 14:54:36 +0000 (14:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Ia0fe8e8eb8f699fdcb15c85d129f5f237a60b02a
Fredrik Bergstrand [Thu, 7 Jul 2022 07:08:37 +0000 (09:08 +0200)]
Fix incorrect staging buffer size calculation
The dEQP-VK.api.image_clearing.* tests use a staging buffer to
pre-clear the images to a known value before each test. The size
of this buffer was previously determined by taking the size from the
VkMemoryRequirements obtained for the image. This fails if the size
required to store the image is less than the size required to store
the raw texel data in the buffer, which is later to be copied into
the image. This commit changes that and instead computes the size
of the staging buffer based on image extent, format and number of
layers.
Affects:
dEQP-VK.api.image_clearing.*
Components: Vulkan
VK-GL-CTS issue: 3809
Change-Id: I2b74697d54e11ddd7598299d57d02205bd2571d5
Matthew Netsch [Thu, 9 Jun 2022 18:56:58 +0000 (14:56 -0400)]
Add missing calls to vkResetCommandBuffer
Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.header_bottom_address.*
Components: Vulkan
VK-GL-CTS Issue: 3802
Change-Id: Ieaf337e028db0bb64c3c954210a75bdda7e2e7b8
Matthew Netsch [Fri, 15 Jul 2022 14:26:51 +0000 (14:26 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I3f5a753e75050a8c66e4737bbd3eff861138ea60
Yifan Dai [Mon, 20 Jun 2022 11:29:19 +0000 (19:29 +0800)]
Fix missing support check in rtp test
The binding descriptor AS tests for rtp stage missed support check
when maxRayRecursionDepth equals 1
Affects:
dEQP-VK.binding_model.descriptor_update.acceleration_structure.
ray_tracing*
Components: vulkan
VK-GL-CTS issue: 3700
Change-Id: I8f2886aa60de2855799b43c27a853e903955f422
Graeme Leese [Fri, 24 Jun 2022 14:02:19 +0000 (15:02 +0100)]
Fix image feature checking in YCbCr view tests
The tests were using midpoint chroma sampling without checking for
support.
Components: Vulkan
VK-GL-CTS issue: 3601
Affects: dEQP-VK.ycbcr.plane_view.*
Change-Id: Iffd248b40c8d3c71cb2be28ad4fe7457bad25fa9
Alan Baker [Mon, 13 Jun 2022 13:06:25 +0000 (09:06 -0400)]
Fix control flow in SPIR-V test cases
Adapts three graphicsfuzz test cases to reflect changes in the SPIR-V
specification that tighten the rules for structured control flow.
Component: Vulkan
VK-GL-CTS Issue: 3612, 3613, 3615
Affected tests:
dEQP-VK.graphicsfuzz.control-flow-switch
dEQP-VK.graphicsfuzz.cov-dead-branch-func-return-arg
dEQP-VK.graphicsfuzz.nested-for-loops-with-return
Change-Id: I3b581dcdc685717421c7c7a7299bf378b3cc3b01
Thomas Aven [Mon, 13 Jun 2022 07:30:40 +0000 (09:30 +0200)]
Fix checkSupport for pipeline bind point tests
Ray tracing tests are unconditionally skipped if VK_KHR_push_descriptor
or VK_KHR_descriptor_update_template is not supported by the
implementation, as the support check logic is mistakenly checking only
the graphics and compute pipeline usages. Fix the support checks by
first checking which pipelines are used in the test.
Affects:
dEQP-VK.pipeline.monolithic.bind_point.*
Components: Vulkan
VK-GL-CTS issue: 3820
Change-Id: Ic6f0b78ca2d4d5415db03ca1186100494201548f
Sławomir Cygan [Fri, 17 Jun 2022 13:41:40 +0000 (15:41 +0200)]
Allow sample counting after multisample coverage
Vulkan specification was modified to allow counting samples
after mutlisample coverage and fragment shading.
The test uses a fragment shader that kills all pixels with
"gl_SampleMask[0] = 0x0" and than verifies the occlusion query results.
This change allows for 0 samples to be counted by a query in case
of `early_fragment_tests` mode being used. The QualityWarning is emitted
in this case.
Components: Vulkan
Vulkan Issue: 3085
VK-GL-CTS Issue: 3778
Affects: dEQP-VK.fragment_operations.early_fragment.sample_*
Change-Id: I86cf17b2d8849a9d543e8447569ac808928c30e6
Juha Heiskanen [Mon, 6 Jun 2022 11:56:43 +0000 (14:56 +0300)]
Early fragment depth test rounding issue bug fix
Small correction to vertex coordinates to avoid unexpected depth value
roundings.
Components: Vulkan
VK-GL-CTS Issue: 3732
Affects:
dEQP-VK.fragment_operations.early_fragment.early_fragment_tests_depth
dEQP-VK.fragment_operations.early_fragment.no_early_fragment_tests_depth
Change-Id: Ifa8f92a2c2e18acb4122a10498c9c21e7990e9f6
Matthew Netsch [Thu, 7 Jul 2022 19:49:10 +0000 (19:49 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Change-Id: I300e223f9f8743cc0579547d535f8af333caeada
Ricardo Garcia [Thu, 16 Jun 2022 18:23:42 +0000 (20:23 +0200)]
Fix synchronization in compressed texture sampling tests
Tests sampling compressed textures contained multiple synchronization
errors, most of them related to:
* Render pass load operations not properly synchronized with previous
writes.
* Barriers that did not properly synchronize all layers of a cube map.
* Improper initial layout transitions.
Affected tests:
dEQP-VK.image.sample_texture.*
dEQP-VKSC.image.sample_texture.*
VK-GL-CTS issue: 3763
Components: Vulkan
Change-Id: I2f2572a7f6a05c55c904014fafc3a655dbb03ee3
Matthew Netsch [Thu, 7 Jul 2022 19:24:45 +0000 (19:24 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I0f96a1f42fc6069ae185225b3794e37eea200a74
Matthew Netsch [Thu, 7 Jul 2022 18:56:48 +0000 (18:56 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Ia16eafb924ac851fcda00d605e608af190b56997
Matthew Netsch [Thu, 7 Jul 2022 18:29:26 +0000 (18:29 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I1c3fa921a070b79cbcd31c213cfbb651c4d07530
Matthew Netsch [Thu, 7 Jul 2022 18:01:59 +0000 (18:01 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Id3635ffcac963dbd16ed489269205e90f92aa6a0
Max Andersson [Thu, 9 Jun 2022 12:40:46 +0000 (14:40 +0200)]
Change direction of IgnoreIntersection/TerminateRay tests
Changes the ray direction of the IgnoreIntersection and
TerminateRay tests such that it shoots the ray into the
center of the triangle, rather than exactly at one of
its edges.
Impacts tests:
dEQP-VK.ray_tracing_pipeline.misc.Op*
Components: Vulkan
VK-GL-CTS issue: 3771
Change-Id: Ic36cc125238323eb367412f220afe8907f700c8d
Matthew Netsch [Thu, 7 Jul 2022 17:36:30 +0000 (17:36 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I7ab0e9094c250af82f5aa28183fe5759e96f3e5f
Joe Withers [Fri, 1 Jul 2022 15:28:05 +0000 (16:28 +0100)]
Fix image feature checking in YCbCr filtering tests
The tests were using linear chroma filtering without checking for
support.
Components: Vulkan
Affects:
dEQP-VK.ycbcr.filtering.*
Change-Id: I2619667b8ebf78f3c2c1880501925a1348305b64
Matthew Netsch [Thu, 16 Jun 2022 18:07:42 +0000 (18:07 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Change-Id: Ie9da086ce3cfaa7b9aa768fdf700905f0512f446
Ricardo Garcia [Thu, 9 Jun 2022 08:55:46 +0000 (10:55 +0200)]
Synchronize clears and reads in transient attachment tests
These tests use a render pass with no draw operations to clear a color
or depth/stencil attachment and use it as an input attachment in a
second render pass, but they were missing a barrier to synchronize both
operations.
Affected tests:
dEQP-VK.fragment_operations.transient_attachment_bit*
Components: Vulkan
VK-GL-CTS issue: 3717
Change-Id: Ifcd1817fa631973e4f74866546dfad4e021a16bc
Matthew Netsch [Thu, 16 Jun 2022 17:43:14 +0000 (17:43 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I5830bb9dc3d462de2df81a0af118a40953315102
Mike Blumenkrantz [Tue, 26 Apr 2022 18:30:12 +0000 (14:30 -0400)]
fix dEQP-VK.subgroups.size_control.compute.required_subgroup_size_*_require_full_subgroups_spirv16
the spirv16 cases weren't fixed in an earlier change which addressed the same problem
Affects:
dEQP-VK.subgroups.size_control.compute.required_subgroup_size_max_require_full_subgroups_spirv16
dEQP-VK.subgroups.size_control.compute.required_subgroup_size_min_require_full_subgroups_spirv16
Change-Id: Ic70024e080cff8c824ffa126774f27f2d378c52d
Matthew Netsch [Thu, 16 Jun 2022 17:15:31 +0000 (17:15 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I4ce72e2de0508fd24ef31b5cf2ae190ad73ad2bc
Matthew Netsch [Thu, 16 Jun 2022 16:48:03 +0000 (16:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ieac8dac110e196cd1d83bff11be45fdec6a72f2b
Thomas Aven [Mon, 30 May 2022 09:38:02 +0000 (11:38 +0200)]
Add missing barrier in ray tracing tests
When running the CPU build acceleration structure tests, no acceleration
structure commands are recorded, resulting in a missing execution
barrier. Add the missing barrier between vkCmdClearColorImage and
vkCmdTraceRaysKHR. This barrier is the same barrier used in the
equivalent ray query tests.
Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.*
Components: Vulkan
VK-GL-CTS issue: 3750
Change-Id: Ib9fc047e6e3a45165e5028846f8f10e96aca53c1
Matthew Netsch [Thu, 16 Jun 2022 16:20:42 +0000 (16:20 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: If7368ce72c121d0642e902c08c0f79d6c99ad73c
Matthew Netsch [Thu, 16 Jun 2022 15:55:55 +0000 (15:55 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I238c6805dbba58a1dddb7639663cd9c9b83b7f64
Ricardo Garcia [Wed, 1 Jun 2022 15:31:23 +0000 (17:31 +0200)]
Forbid implicit cast from Move<T> to bool
Take the following code:
Move<VkPipelineLayout> smartLayout = ...;
VkPipelineLayout rawLayout = smartLayout;
That builds and applies the following implicit conversions:
Move<T> -> bool -> VkPipelineLayout
Which doesn't make any sense (the raw handle ends up having value "1")
and it's arguably an easy typo to make, when the second line should
actually have been one of:
VkPipelineLayout rawLayout = *smartLayout;
VkPipelineLayout rawLayout = smartLayout.get();
This commit disallows the implicit conversions from Move<T> to bool and
makes the typo fail compilatoin on purpose.
It also fixes one instance of such typo in the affected test, which was
causing issues when implementing graphics pipeline libraries in RADV.
Note the test also touches vktRenderPassTests.cpp, but the change should
not affect any test result there.
Affected tests:
dEQP-VK.pipeline.pipeline_library.graphics_library.misc.timing.compare_link_times
VK-GL-CTS issue: 3735
Components: Vulkan
Change-Id: Id968a1e74f6246e592257f7b3675c80e3363feaf
Ricardo Garcia [Wed, 25 May 2022 10:36:00 +0000 (12:36 +0200)]
Fix extension checks in DRM format modifier tests
Some of the checks for supported extensions made the tests error out
instead of marking them as not supported.
Affected tests:
dEQP-VK.drm_format_modifiers.*
Components: Vulkan
VK-GL-CTS issue: 3720
Change-Id: I47c1f051128e425d5faae3bed5c2830218df4881
Ricardo Garcia [Wed, 1 Jun 2022 14:19:25 +0000 (16:19 +0200)]
Fix device and memory allocation mix-up
compute_transfer dynamic state tests were allocating memory on one
device and binding it to a buffer created on a separate device. This
commit fixes the issue and make sure the right devices and allocators
are always used.
Affected tests:
dEQP-VK.dynamic_state.monolithic.compute_transfer.*
VK-GL-CTS issue: 3727
Components: Vulkan
Change-Id: I8f8aeffd0d4946465af1a600d5f7331e4040638a
Matthew Netsch [Mon, 6 Jun 2022 15:54:27 +0000 (08:54 -0700)]
Fix modifier tests - Add Invalidate memory before host read.
Test cases for extension VK_EXT_image_drm_format_modifier were failing randomly due to image mismatch.
This was due to after performing copyImagetoBuffer buffers are not invalidated before reading from host.
Added the invalidate operation for buffer before reading.
Components: Vulkan
VK-GL-CTS Issue: 3744
Affects:
dEQP-VK.drm_format_modifiers.*
Change-Id: I57b27bf9c0beea0ed822b36ea379b024f9d1690a
Jesse Archer [Fri, 20 May 2022 21:15:10 +0000 (14:15 -0700)]
Declare atomic_payload array coherent
Data in the release_acquire_atomic_payload uses atomic functions
on an array, so this array needs to be declared coherent.
Affected tests:
dEQP-VK.memory_model.message_passing.permuted_index.release_acquire_atomic_payload
Components: Vulkan
VK-GL-CTS issue: 3706
Change-Id: I6f285e3000368d083369bda5b3782a3b44c9b64d
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
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
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
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
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
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
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
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
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
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
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
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)
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)
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
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
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
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
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
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
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
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
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)
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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