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
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
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 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
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
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
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Matthew Netsch [Fri, 1 Apr 2022 15:35:04 +0000 (15:35 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I4713730ea2497ef56f0c939a5e73a6bdc0cdcb6e
Ricardo Garcia [Mon, 28 Mar 2022 13:40:57 +0000 (15:40 +0200)]
Fix memory leaks when creating test hierarchy
The lack of a virtual destructor in one of the classes used as part of
some test parameters made createDescriptorValveMutableTests() leak
memory whenever it was called, in the moment the test hierarchy is being
destroyed. The leak will happen not only when running mutable descriptor
test, but when the binding_model test group needs to be generated for
any reason, including running tests in adjacent groups.
Hence, the change has no specific list of affected tests. At the same
time, no test result should be affected by the change.
Components: Vulkan
VK-GL-CTS issue: 3583
Change-Id: I7e847b5927359cef27f9992cd53991dd1a7cb781
Ricardo Garcia [Thu, 17 Mar 2022 08:41:32 +0000 (09:41 +0100)]
Use proper image tiling in synchronization test support checks
Some test variants use LINEAR instead of OPTIMAL tiling and the proper
tiling mode features need to be checked.
Affected tests:
dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 3572
Change-Id: I16042ace7fb3a2f93b1503e539a5bbe59e03ae14
Matthew Netsch [Thu, 31 Mar 2022 19:30:35 +0000 (12:30 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I5e73a149353915a09697633abab737ee8a38fdca
Matthew Netsch [Thu, 31 Mar 2022 17:26:55 +0000 (17:26 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I4624140325b398fc901142f54425375b5ffa3d66
Matthew Netsch [Thu, 31 Mar 2022 17:02:52 +0000 (17:02 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Ibcfcfa0cf5ad247b4c80017ad298d15a5139868f
James Jones [Fri, 27 Aug 2021 23:33:24 +0000 (16:33 -0700)]
modifiers: Use dedicated memory consistently
When a dedicated allocation device memory object
is exported, it must be imported as a dedicated
allocation created with a compatible resource as
well. This change makes the DRM format modifier
tests self-consistent in that regard.
Components: Vulkan
Affected tests: dEQP-VK.drm_format_modifiers.export_import.*
VK-GL-CTS issue: 3544
Change-Id: I93a35180b9a5a1b98e0d4fa1f2934258134cef1b
Matthew Netsch [Mon, 28 Mar 2022 14:14:55 +0000 (14:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I61b2991c59749bd8fe611add1809f596035a1027
Matthew Netsch [Mon, 28 Mar 2022 14:14:48 +0000 (14:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Ie50f49d88d9a088bd86f6a659349557d5ad50cea
Matthew Netsch [Mon, 28 Mar 2022 14:14:33 +0000 (14:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: Iefb6b35452197d43db9dfc52b689476d2a81b8dd
Peter Kohaut [Mon, 28 Mar 2022 11:53:49 +0000 (13:53 +0200)]
Fix Zlib depedency
Use newer version of Zlib as older is no longer available to download from the zlib.net page
Components: Framework
Affects:
None
VK-GL-CTS Issue: 3587
Change-Id: Ie166dc897b0d1318c1ae73434bfa19687b579691
Ricardo Garcia [Mon, 14 Mar 2022 16:11:04 +0000 (17:11 +0100)]
Increase tolerance in mat3 determinant compute test
The determinant operation does not have strict precision requirements
and a recent change in Mesa broke this test for RADV. A slight increase
in tolerance fixes it.
Affected tests:
dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat3
VK-GL-CTS issue: 3571
Components: Vulkan
Change-Id: I5185bc4d45d848cbad11798f743ae65fbb798657
Matthew Netsch [Thu, 24 Mar 2022 20:40:15 +0000 (20:40 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ie55187998eab0ae965e731fc98511b86c842704e
Matthew Netsch [Thu, 24 Mar 2022 20:13:05 +0000 (20:13 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I81f233780e77ccfb79e9b1b9d982c9406a9ca268
Matthew Netsch [Thu, 24 Mar 2022 19:49:07 +0000 (19:49 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I8a313ea2aebdd5163a689b2cc31161e5963172a2
Michael Chock [Wed, 2 Mar 2022 17:16:34 +0000 (09:16 -0800)]
Check for visibility in external_memory_host test
The external_memory_host synchronization test uses mapMemory when
validating the contents of the external memory, but does not ensure that
the memory is host-visible. When choosing a memory type for the
host-visible memory, additionally check the HOST_VISIBLE flag.
Affects:
dEQP-VK.memory.external_memory_host.synchronization.synchronization
Components: Vulkan
VK-GL-CTS issue: 3547
Change-Id: I0cff8f42debedd01db1760881a6f5f9481ea39bf
Jason Ekstrand [Wed, 16 Mar 2022 22:33:17 +0000 (17:33 -0500)]
Fix dEQP-VK.subgroups.size_control.compute.required_subgroup_size_*_require_full_subgroups
The tests were testing full subgroups with four workgroup sizes:
- Nx1x1
- 1xNx1
- 1x1xN
- getLocalSizes() which returns a maximally large workgroup size
However, the Vulkan spec says:
"If a VkPipelineShaderStageRequiredSubgroupSizeCreateInfo structure
is included in the pNext chain, and flags has the
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT flag set,
the local workgroup size in the X dimension of the pipeline must be
a multiple of
VkPipelineShaderStageRequiredSubgroupSizeCreateInfo::requiredSubgroupSize
This means that the middle two subgroup sizes are invalid for use with
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT.
Components: Vulkan
Affects:
- dEQP-VK.subgroups.size_control.compute.required_subgroup_size_max_require_full_subgroups
- dEQP-VK.subgroups.size_control.compute.required_subgroup_size_min_require_full_subgroups
Change-Id: I46f2547e1a50f78cbed6695f96448f463ca57230
Matthew Netsch [Thu, 10 Mar 2022 17:47:08 +0000 (17:47 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I2280d6ce320738b91994d4603600c38d5d1ba4ee
Matthew Netsch [Thu, 10 Mar 2022 17:20:41 +0000 (17:20 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: If390df3efc02bff47f240c62e35d23e78c537b4c
Matthew Netsch [Thu, 10 Mar 2022 16:57:32 +0000 (16:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I31b3e7ec830aa10aa3c06ef61972a4e9c48dffc2
Matthew Netsch [Thu, 10 Mar 2022 16:34:26 +0000 (16:34 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I010f996f4b726f1f79e9bbe9b9f3e96131021f00
Boris Zanin [Tue, 1 Mar 2022 15:16:12 +0000 (16:16 +0100)]
Disable BC7 mode 8 pattern generation
Due to BC7 is underspecified for mode 8 (LSB=0x00) tests
should avoid testing it. This commit avoids generation
mode 8 BC7 compressed blocks.
Affects tests:
* dEQP-VK.*bc7*
Components: Framework, Vulkan
VK-GL-CTS issue: 3501
Change-Id: I222046f703fbead2bf5c64376defc6481989be24
Antto Mäkinen [Wed, 23 Feb 2022 12:18:08 +0000 (14:18 +0200)]
Fix checkSupport in compressed texture sampling tests
Compressed texture sampling tests didn't properly check that images
using a compressed format can be created with the extended usage
flags. This commit fixes the check.
VK-GL-CTS issue: 3225
Affected Tests:
dEQP-VK.image.sample_texture.*
Components: Vulkan
Change-Id: I1c077d29befac3d1b22c5ac2072518296f721f47
Matthew Netsch [Thu, 3 Mar 2022 18:00:13 +0000 (18:00 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ib6194cc5034a2dada976ef494cf4c23fe997555f
Slawomir Cygan [Wed, 19 Jan 2022 11:51:01 +0000 (12:51 +0100)]
Don't adjust vertext buffer pointer in AS for indirect AS build.
Indirect build test programs offsets into the vertex buffer in the wr-asb
shader. This shader mimics vertex buffer pointer adjustment that is done in
AS build util.
Doing both adjustments (in shader and in AS) would cause out of bounds
accesses.
Authored-by: German, Leonid <leonid.german@intel.com>
Components: Vulkan
VK-GL-CTS Issue: 3540
Affects: dEQP-VK.ray_tracing_pipeline.indirect.build_structure
Change-Id: Iace6cf96d478641f412de3a3d0ec7ab001860f29
Ricardo Garcia [Thu, 17 Feb 2022 10:09:07 +0000 (11:09 +0100)]
Do not require full subgroups when requiring a work group size
Most subgroup tests that require a particular work group size use the
VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT flag when
creating the shader stage, but that in turn forces the local size in the
X dimension to have certain values as required by the following VUID:
VUID-VkPipelineShaderStageCreateInfo-pNext-02757
There are specific tests to check full subgroups. The flag can be safely
omitted and these other tests should still work.
Affected tests:
dEQP-VK.subgroups.*compute*
Components: Vulkan
VK-GL-CTS issue: 3520
Change-Id: Ic20d07d3a875156f817066d040ddf5813aef311f
Matthew Netsch [Thu, 3 Mar 2022 17:34:09 +0000 (17:34 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I589df8409840b42f6c683dda57616b3ee8359128