Matthew Netsch [Thu, 6 Oct 2022 19:54:16 +0000 (12:54 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I56e0faf8f022888c1d28b368d7852a83575ae57d
ziga-lunarg [Sat, 17 Sep 2022 22:29:20 +0000 (00:29 +0200)]
Check if stage is supported with subgroup size
When using required subgroup size, shader stage used must be a bit in
VkPhysicalDeviceSubgroupSizeControlProperties requiredSubgroupSizeStages
Components: Vulkan
VK-GL-CTS issue: 3962
Affected tests:
dEQP-VK.reconvergence.*
Change-Id: Ie2109b6974c4da57f19e8d321e27ccbad1298c71
Matthew Netsch [Thu, 6 Oct 2022 16:26:49 +0000 (09:26 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Iea1e614855e2a12ab124da1dd1f24f2aaa938406
ziga-lunarg [Mon, 19 Sep 2022 21:23:16 +0000 (23:23 +0200)]
Fix dedicated allocations in split frame rendering tests
The image bound to dedicated memory must match the image from
VkMemoryDedicatedAllocateInfo
Components: Vulkan
VK-GL-CTS issue: 3971
Affected tests:
dEQP-VK.device_group.sfr_*
Change-Id: I23684ae6777d575da5eb244dfd856946ba67aa4a
ziga-lunarg [Wed, 21 Sep 2022 21:00:04 +0000 (23:00 +0200)]
Fix external memory opaque fd tests for MacOS
Components: Vulkan
VK-GL-CTS issue: 3981
Affected tests:
dEQP-VK.api.external.memory.*
Change-Id: I21a169aab047e58bc716d2aa69426b23af9295f2
ziga-lunarg [Fri, 16 Sep 2022 00:42:41 +0000 (02:42 +0200)]
Fix attachment load op in framebuffer compatible render pass tests
If image layout is VK_LAYOUT_UNDEFINED the loadOp of
VkAttachmentDescription must not be VK_ATTACHMENT_LOAD_OP_LOAD
Components: Vulkan
VK-GL-CTS issue:3948
Affected tests:
dEQP-VK.api.pipeline.renderpass.framebuffer_compatible_renderpass
Change-Id: I4b31df7fa9ca56d9c31af1326b8036f81e9d80fe
ziga-lunarg [Mon, 19 Sep 2022 17:01:59 +0000 (19:01 +0200)]
Fix errors in imageless framebuffer tests
Attachment must not be VK_ATTACHMENT_LOAD_OP_LOAD if initialLayout is
VK_IMAGE_LAYOUT_UNDEFINED
If framebuffer flags contain VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT then
image usage must include VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
Components: Vulkan
VK-GL-CTS issue: 3969
Affected tests:
dEQP-VK.imageless_framebuffer.*
Change-Id: Ie588c547f8f55710eeffdccea94dd552dd8559a2
ziga-lunarg [Sat, 17 Sep 2022 19:25:08 +0000 (21:25 +0200)]
Use only required buffer usage bit in robustness tests
Using all bits requires additional checks for format support
Components: Vulkan
VK-GL-CTS issue: 3959
Affected tests:
dEQP-VK.robustness.*
Change-Id: I7a7c9e338b1e38a2d028f1fcffd6196bb75fa285
ziga-lunarg [Wed, 21 Sep 2022 16:45:54 +0000 (18:45 +0200)]
Fix srcStageMask in vkCmdWaitEvents in external fence tests
If event is set with vkSetEvent the srcStageMask must be
VK_PIPELINE_STAGE_HOST_BIT
Components: Vulkan
VK-GL-CTS issue: 3979
Affected tests:
dEQP-VK.api.external.fence.*
Change-Id: I9ca6fb5bdb597639cd5cb88afdbb03dde565acd8
ziga-lunarg [Wed, 21 Sep 2022 17:11:03 +0000 (19:11 +0200)]
Fix srcStageMask in vkCmdWaitEvents in secondary cmd buffers tests
If event is set with vkCmdSetEvent the srcStageMask must be
VK_PIPELINE_STAGE_HOST_BIT
Components: Vulkan
VK-GL-CTS issue: 3980
Affected tests:
dEQP-VK.api.command_buffers.secondary_execute_twice
Change-Id: Ib784e454ecf2bead488a267a069111da16ddfa8d
ziga-lunarg [Tue, 20 Sep 2022 19:49:29 +0000 (21:49 +0200)]
Fix memory allocation tests with device coherent memory
Extension VK_AMD_device_coherent_memory needs to be enabled in order ot
use VkPhysicalDeviceCoherentMemoryFeaturesAMD
Components: Vulkan
VK-GL-CTS issue: 3973
Affected tests:
dEQP-VK.memory.allocation.*
Change-Id: Ia866ab947bbd1af867f409053f830598965dea12
ziga-lunarg [Sat, 24 Sep 2022 00:25:44 +0000 (02:25 +0200)]
Fix color blend state in multisample tests
If the subpass the pipeline is created with has no color attachment the
attachmentCount of pColorBlendState must also be 0
Components: Vulkan
VK-GL-CTS issue: 3991
Affected tests:
dEQP-VK.pipeline.multisample.alpha_to_coverage_no_color_attachment.*
Change-Id: I37ca31e3114ca3e840759b118365f41b1a9565a1
ziga-lunarg [Wed, 21 Sep 2022 00:23:28 +0000 (02:23 +0200)]
Fix signal order tests timeline semaphore value
The new timeline semaphore value must be greater than the current value
of the semaphore
Components: Vulkan
VK-GL-CTS issue: 3978
Affected tests:
dEQP-VK.synchronization.signal_order.*
Change-Id: I7f1276dda7739f7817148550fd1b0782d9045849
Hyunjun Ko [Fri, 30 Sep 2022 01:02:25 +0000 (10:02 +0900)]
Add checking drawIndirectCount in conditional rendering tests.
Affects:
dEQP-VK.conditional_rendering.*_indirect_count
Components: Vulkan
VK-GL-CTS issue: 4012
Change-Id: Iad77cebba4a84833f7733a2f8041285623a000bc
ziga-lunarg [Sat, 17 Sep 2022 13:08:43 +0000 (15:08 +0200)]
Fix image barriers in image to image copy tests
The same image barriers are used twice if clearDestination is used,
the oldLayout of the second barrier does not match the current layout of
the image
Components: Vulkan
VK-GL-CTS issue: 3956
Affected tests:
dEQP-VK.api.copy_and_blit.*.image_to_image.*
Change-Id: I2623e70f3d4f0b97f9f941e4e6cb2760fd2c9d74
ziga-lunarg [Sat, 17 Sep 2022 22:40:54 +0000 (00:40 +0200)]
Fix srcStageMask in buffer_marker tests
If srcAccessMask in pipeline barrier is VK_ACCESS_TRANSFER_WRITE_BIT the
srcStageMask must be VK_PIPELINE_STAGE_TRANSFER_BIT
Components: Vulkan
VK-GL-CTS issue: 3963
Affected tests:
dEQP-VK.api.buffer_marker.compute.default_mem.*
Change-Id: I0a5957d714c4c5cb9f2855421cd78683b7b7b819
ziga-lunarg [Mon, 19 Sep 2022 00:00:02 +0000 (02:00 +0200)]
Enable features in synchrnozation tests custom device
The custom device used in synchrnonization utils does not enable any
features, but uses for example geometryShader
Components: Vulkan
VK-GL-CTS issue: 3964
Affected tests:
dEQP-VK.synchronization.*
Change-Id: Ia8f46b3e1ca519f0436f7545ef1b1a80652dbc88
ziga-lunarg [Tue, 27 Sep 2022 18:49:28 +0000 (20:49 +0200)]
Remove invalid unmatched flags test
The test is removed as it tries to perform a test case which is not
allowed by valid usage descriptions
This test was already removed from main, but not older release branches
Components: Vulkan
VK-GL-CTS issue: 3621
Removed tests:
dEQP-VK.api.device_init.create_device_queue2_unmatched_flags
Change-Id: I42c21222f7c3a066ca07b967bdde54dbb3007336
ziga-lunarg [Tue, 20 Sep 2022 23:07:56 +0000 (01:07 +0200)]
Fix barriers in synchronization2 tests
Stage VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR
is not supported with access mask VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT
or VK_ACCESS_2_INDEX_READ_BIT
Components: Vulkan
VK-GL-CTS issue: 3977
Affected tests:
dEQP-VK.synchronization2.*
Change-Id: I0c40b798e80fda98cdda49788210331a878f6bd5
ziga-lunarg [Fri, 23 Sep 2022 00:34:09 +0000 (02:34 +0200)]
Fix errors in buffer_marker tests
If srcAccessMask is VK_ACCESS_TRANSFER_WRITE_BIT the stage mask must be
VK_PIPELINE_STAGE_TRANSFER_BIT
If vkFreeDescriptors is called, the descriptor pool must have been
created with VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT
Components: Vulkan
VK-GL-CTS issue: 3984
Affected tests:
dEQP-VK.api.buffer_marker.*.default_mem.*
Change-Id: Iaec7d2a74f7d4084258206d4c96cc112c23e38f8
ziga-lunarg [Sat, 10 Sep 2022 19:39:25 +0000 (21:39 +0200)]
Fix pipeline barrier in multisample resolve tests
srcAccessMask and dstAccessMask must be supported by the pipeline stages
used in the barrier
Components: Vulkan
VK-GL-CTS issue: 3934
Affected tests:
dEQP-VK.dynamic_rendering.suballocation.multisample_resolve.*
Change-Id: Ic2d4976875c67ece548a92e236f778fe77740ef5
aitor_lunarg [Mon, 12 Sep 2022 14:17:31 +0000 (16:17 +0200)]
Fix basic dynamic rendering tests
Create pipeline with correct information for depth/stencil
and correctly inherit in secondary command buffers.
Affects:
dEQP-VK.dynamic_rendering.basic.*
Components: Vulkan
VK-GL-CTS issue: 3939
Change-Id: Ide926862c5272d7ef5cafcaf40b47e338b071edb
ziga-lunarg [Sat, 10 Sep 2022 20:26:20 +0000 (22:26 +0200)]
Fix multisample resolve tests with integer formats
If attachments use an integer format, resolveMode must be either
VK_RESOLVE_MODE_NONE or VK_RESOLVE_MODE_SAMPLED_ZERO_BIT
Components: Vulkan
VK-GL-CTS issue: 3935
Affected tests:
dEQP-VK.*.multisample_resolve.*
Change-Id: I3b410d06185a2572e4e199a23e0dffec9b457a22
ziga-lunarg [Tue, 27 Sep 2022 21:43:14 +0000 (23:43 +0200)]
Fix FSR tests with imageless framebuffers
If framebuffer is created with imageless bit then pViewFormats must
include the format used in VkAttachmentDescription
This was fixed once already, but was undone with a bad merge
Components: Vulkan
VK-GL-CTS issue: 3943
Affected tests:
dEQP-VK.fragment_shading_rate.*.basic.*
Change-Id: I40cf4c47d397a10c690708fa06a932ff13cd2db2
Matthew Netsch [Thu, 29 Sep 2022 17:20:29 +0000 (17:20 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ice60c62e6d9ad661427fc8fe22b55e7859552b15
Matthew Netsch [Thu, 29 Sep 2022 16:53:47 +0000 (16:53 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Icb63b934b1b399deb129bce52cc5b91cce1def10
Graeme Leese [Mon, 12 Sep 2022 09:24:51 +0000 (10:24 +0100)]
Simplify feature checking in YCbCr tests
Components: Vulkan
VK-GL-CTS Issue: 3937
Affects: dEQP-VK.ycbcr.*
Change-Id: I55fe0172efe4e64127927a10c08cc08d741ed817
ziga-lunarg [Wed, 14 Sep 2022 00:48:53 +0000 (02:48 +0200)]
Fix FSI tests flusing non host visible memory
Test try to flush memory that does not have host visible bit
Components: Vulkan
VK-GL-CTS issue: 3944
Affected tests:
dEQP-VK.fragment_shader_interlock.*
Change-Id: If7e1294a3d01e6c1dbd1bf08d9902c476ed5a2bd
Graeme Leese [Wed, 14 Sep 2022 13:45:58 +0000 (14:45 +0100)]
Fix bad depth/stencil sync for depth_range_unrestricted
The synchronisation for the depth image was only for the late fragment
tests stage and only for writing. Since the depth test needs to read the
existing value the sync requires the READ bit and should apply at the
earliest stage that might perform the test (EARLY_FRAGMENT_TESTS, rather
than LATE_FRAGMENT_TESTS).
Component: Vulkan
Affects: dEQP-VK.pipeline.depth_range_unrestricted.*
Change-Id: I329e0f201735d0241c35f37a33379f361334f43e
Matthew Netsch [Thu, 15 Sep 2022 17:10:40 +0000 (17:10 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I596aa3ecd9c4fb713c76e19a9e7d753909f13f67
Iago Toral Quiroga [Wed, 31 Aug 2022 10:40:58 +0000 (12:40 +0200)]
lower local size for some amber KHR_workgroup_memory_explicit_layout tests
Some of these tests use a local size that exceeds the minimum requirement
in the spec and don't check whether the implementation supports it.
Rewrite the tests to use the minimum limit required by the spec for
maxComputeWorkGroupInvocations, which is 128, so that the test can
run on any implementation.
VK-GL-CTS issue: 3913
Components: Vulkan
Affects:
dEQP-VK.compute.workgroup_memory_explicit_layout.copy_memory.*
dEQP-VK.compute.workgroup_memory_explicit_layout.zero_ext.*
Change-Id: I4e8135d8d60e044f92ed5c53648fda24f067edc0
Matthew Netsch [Thu, 15 Sep 2022 16:43:57 +0000 (16:43 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I69b15479584e309ff31e12b315aeb42b01410e61
ziga-lunarg [Fri, 2 Sep 2022 21:45:58 +0000 (23:45 +0200)]
Fix using device coherent memory without enabling the feature
Components: Vulkan
VK-GL-CTS issue: 3921
Affected tests:
dEQP-VK.memory.allocation.*
Change-Id: I4eb9e1ab6f22487573bfe14affa75396962145c8
Matthew Netsch [Thu, 8 Sep 2022 14:00:27 +0000 (07:00 -0700)]
Fix modifier tests - Add Invalidate memory before host read.
After performing copyImagetoBuffer buffers no invalidation was given
before reading from host. Add the invalidate operation for buffer
before reading.
Components: Vulkan
VK-GL-CTS Issue: 3929
Affected tests:
dEQP-VK.transform_feedback.simple.*
Change-Id: I57dd4d65e9894e85f7d0c5adc4682f45e046bc02
Peter Kasting [Thu, 8 Sep 2022 19:00:54 +0000 (19:00 +0000)]
Fix build in C++20 mode.
* Compound assignments to volatiles are deprecated. Use non-compound
forms.
* Math between disparate enums is deprecated. Use constexprs.
* The full definition of a type T must be visible for code that
instantiates std::vector<T>. Reorder code to guarantee this.
Components: Framework
Bug: chromium:1284275
Change-Id: I75a99b5c09cc911f2312aabe85f49aadff84dc51
Matthew Netsch [Thu, 8 Sep 2022 17:03:16 +0000 (17:03 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I58b46f7b755b5f731d3865d16b2e248eb0653501
Matthew Netsch [Thu, 8 Sep 2022 16:36:32 +0000 (16:36 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Idcb4f9a2cb008e61fcfcd45aaed0e31be4cf8e1b
Hyunjun Ko [Fri, 2 Sep 2022 05:27:33 +0000 (14:27 +0900)]
Fix wrong calculation to check diff between floats.
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.*
Components: Vulkan
VK-GL-CTS issue: 3916
Change-Id: I05d2b7375c0bd34b6b7fffabbfe52969009ea218
Chad Versace [Thu, 25 Aug 2022 20:27:53 +0000 (13:27 -0700)]
VK_EXT_pipeline_creation_feedback: Invalid feedback is legal
The tests incorrectly required that
VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT be set in
VkPipelineCreationFeedbackCreateInfo::pPipelineCreationFeedback.
However, the tests already and correctly permit the bit to be unset in
VkPipelineCreationFeedbackCreateInfo::pPipelineStageCreationFeedbacks.
The Vulkan 1.3.225 spec says:
An implementation should write pipeline creation feedback to
pPipelineCreationFeedback and may write pipeline stage creation
feedback to pPipelineStageCreationFeedbacks. An implementation must
set or clear the VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT in
VkPipelineCreationFeedback::flags for pPipelineCreationFeedback and
every element of pPipelineStageCreationFeedbacks.
Components: Vulkan
VK-GL-CTS Issue: 3912
Affects:
dEQP-VK.pipeline.creation_feedback.*
Signed-off-by: Chad Versace <chadversary@google.com>
Change-Id: I4eb37b5888a4d780b4b0b12f9c65960aca9f7806
Andreas Flöjt [Tue, 14 Jun 2022 13:07:46 +0000 (15:07 +0200)]
Stay within the minimum required limit for maxUniformBufferRange
The biggest one was i64vec4 which consumed 128kB. Now it fits within the
16384 byte minimum supported buffer range.
Affects:
dEQP-VK.robustness.buffer_access.vertex.*
dEQP-VK.robustness.buffer_access.fragment.*
dEQP-VK.robustness.buffer_access.compute.*
Components: Vulkan
VK-GL-CTS issue: 3776
Change-Id: Ib71dce12a346bce79a9b719e227cd6ddfb0d64b6
Matthew Netsch [Fri, 2 Sep 2022 23:26:36 +0000 (23:26 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: If2412675c25225c696d61dec802d76ed8001180e
Sławomir Cygan [Mon, 22 Aug 2022 12:52:59 +0000 (14:52 +0200)]
Fix unsupported condition in memory requirements test
This fixes parantheses to not require VK_KHR_sampler_ycbcr_conversion
extension for non-YCbCr formats
VK-GL-CTS Issue: 3902
Affects: dEQP-VK.memory.requirements.*
Components: Vulkan
Change-Id: I17c58fb1f085e7d32dea9aceb2b9e421990499a5
Piotr Byszewski [Thu, 21 Jul 2022 10:23:03 +0000 (12:23 +0200)]
Fix device_memory_report test
allocation_failed test for VK_EXT_device_memory_report attempts to
allocate UINT64_MAX bytes of memory in order to deliberately trigger
an allocation failure. However, vkAllocateMemory also has VU in which
allocationSize must be less than or equal to
VkPhysicalDeviceMemoryProperties::memoryHeaps[memindex].size .
VK-GL-CTS issue: 3775
Components: Vulkan
Affects:
dEQP-VK.memory.device_memory_report.vk_device_memory.allocation_failed
Change-Id: I0b9db1beb1e7b01d369d5ee6bbfb93c2eb3e1c97
Marcin Kańtoch [Tue, 26 Jul 2022 15:25:41 +0000 (17:25 +0200)]
Fix undefined behaviour by allowing NaNs
One graphicsfuzz test contains computations with the float constant 0x1.8p+128.
This constant represents a NaN value. The computation with undef in the test
allows any optimization/triggers undefined behavior and the driver is free
to crash. Adding OpExecutionMode %4 SignedZeroInfNanPreserve 32 to the CTS fixes
this by allowing NaNs.
Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined
Components: Vulkan
VK-GL-CTS issue: 3787
Change-Id: I2442bc4f50add8b8f779dbfae3c5fe2be8fd85f4
Matthew Netsch [Thu, 1 Sep 2022 23:48:42 +0000 (16:48 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Id9e93b66b2242c3b789e5742b84432c1ba8b355e
Aitor Camacho [Tue, 30 Aug 2022 15:40:50 +0000 (17:40 +0200)]
Remove non-compliant event wait test
Removed tests:
dEQP-VK.api.command_buffers.record_simul_use_primary
dEQP-VK.api.command_buffers.record_simul_use_secondary
Components: Vulkan
VK-GL-CTS issue: 3432
Change-Id: I297b53dcee56bec69e3abd3693639f64e462a574
Ilkka Saarelainen [Thu, 2 Dec 2021 05:45:44 +0000 (07:45 +0200)]
Rework platform memory limits
Some OpenGL tests in openglcts and kc_cts used Vulkan platform class to
get the available system / device memory. The memory limits are not
Vulkan related.
This CL moves the getMemoryLimits function to the base class of all
platforms, so the functions can be accessed from openglcts without
referencing any Vulkan files.
Affects:
dEQP-VK.info.memory_limits
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.*
KHR-GL4*.shader_image_load_store.advanced-*
Components:
Vulkan, OpenGL, Framework
VK-GL-CTS issue: 3360
Change-Id: I0743a83148c946d962fd793c8771f2c3c2e33ecc
Chad Versace [Thu, 25 Aug 2022 22:19:54 +0000 (15:19 -0700)]
VK_EXT_pipeline_creation_feedback: Add indentation
No change in behavior.
Add an indentation level to some code. This prepares for the next
commit, making its diff understandable.
Components: Vulkan
Change-Id: I31e5f706ca6f05b42682a862c740bc4953a91f9b
Matthew Netsch [Thu, 25 Aug 2022 17:04:58 +0000 (17:04 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I17c7fc7a6c0dde2555e90873105027b0f26e94ad
Matthew Netsch [Thu, 25 Aug 2022 16:37:33 +0000 (16:37 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Ia1e9c64b9149680d40e6c2deff9e64725c227439
Hyunjun Ko [Mon, 22 Aug 2022 06:55:24 +0000 (15:55 +0900)]
Improve the error message when storing uncomressed images fails.
It's been ambiguous since the output doesn't have any information when
storing an uncompressed image fails.
Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.*
Components: Vulkan
VK-GL-CTS issue: 3897
Change-Id: I923efb15a9927c87c581dc3c96115b5d6c0b2580
Graeme Leese [Thu, 18 Aug 2022 14:33:53 +0000 (15:33 +0100)]
Fix loop continue construct for SPIR-V assembly
The multi-block continue construct tests were setting the continue
target to the loop header itself, which is not valid according to the
new structural dominance rules. Set it to the first block inside the
loop instead, which still gives a multi-block continue construct but
also follows the validation rules.
Components: Vulkan
VK-GL-CTS issue: 3896
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_continue_construct_*
Change-Id: I7480f6107696ec8587625bfa110aa7478308512f
Graeme Leese [Thu, 18 Aug 2022 11:36:28 +0000 (12:36 +0100)]
Fix SPIRV validation for decoration tests
The decoration matching tests were incorrectly using Flat and
NoPerspective decoration on vertex inputs. The validator has been
updated to catch these errors, so the tests now cause an InternalError.
Compoennts: Vulkan
VK-GL-CTS issue: 3895
Affects: dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.flat
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.no_perspective
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.flat
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.no_perspective
Change-Id: I818868ca87d15d068430e9721204be620b28e225
Arkadiusz Sarwa [Tue, 23 Aug 2022 15:08:55 +0000 (17:08 +0200)]
Fix barrier VK_AMD_buffer_marker
Affected tests:
dEQP-VK.api.buffer_marker.*
Components: Vulkan
VK-GL-CTS issue: 3854
Change-Id: Ia65c7ec44db3019125012b7d7e2d1b65e0f942f6
ziga-lunarg [Thu, 4 Aug 2022 01:20:33 +0000 (03:20 +0200)]
Use correct render target format in YCbCr view tests
For render target use the same format type as plane
compatibility format
Components: Vulkan
VK-GL-CTS issue: 3601
Affected tests:
dEQP-VK.ycbcr.plane_view.image_view.*
Change-Id: I7f03c90069b21a6ea84c6ee9d6d85c31cee3e3ad
Matthew Netsch [Thu, 18 Aug 2022 17:53:46 +0000 (17:53 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ie4a4557846994113b7ebf52e35851c0547faf815
Matthew Netsch [Thu, 18 Aug 2022 17:27:14 +0000 (17:27 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Id059134a7e90b7b6c1c35ad9955ec1bc994db896
yaozhong.zhang [Thu, 4 Aug 2022 10:59:54 +0000 (18:59 +0800)]
Correct the image barrier in ray tracing test
When running the ray tracing pipeline CPU build tests, the image
barrier is not actually used, as no acceleration structure commands
are recorded. On the other hand, the image is used by trace ray
command, instead of building acceleration structure. So, change the
barrier for trace ray command.
Affects:
dEQP-VK.ray_tracing_pipeline.build.*
Components: Vulkan
VK-GL-CTS issue: 3874
Change-Id: Ie70fd57fe9f81952dff21f670a194244856c3d3b
Hyunjun Ko [Tue, 16 Aug 2022 09:34:12 +0000 (18:34 +0900)]
Fix undefined behaviour by bit-shifting with negative value.
When getTextureFormatMantissaBitDepth returns 0 for the non-existent channels,
it leads to 1u << (0u - 1u), that is undefined behaviour, especially
leads to unexpected results on arm64.
Affects:
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*
Components: Vulkan
VK-GL-CTS issue: 3888
Change-Id: I669eebb1f78c78dc89fb456e71f2ca0af3b66836
Yiwei Zhang [Thu, 4 Aug 2022 18:38:51 +0000 (18:38 +0000)]
Disable interval watchdog for sets32 in vktBindingDescriptorSetRandomTests
There're certain sets32 tests doing super long shader compilations.To be
noted that the re-enablement is placed after fence waiting to favor
virtualization drivers that making asynchronous pipeline creation calls
to the host. The long blocking shader compilation will show up upon
guest waiting for the fence to signal.
Affects: dEQP-VK.binding_model.descriptorset_random.sets32.*
Components: Vulkan
VK-GL-CTS issue: 3878
Change-Id: Id25378e9546950bed463f1f278c6859306e0e0d8
Matthew Netsch [Thu, 11 Aug 2022 16:45:57 +0000 (16:45 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I1c0a72196ea1fe9774e494d1b4dd204931e433a9
Matthew Netsch [Thu, 11 Aug 2022 16:19:15 +0000 (16:19 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I77d7ce7559662f59a9a0eee5d2734171421c9e1e
Ricardo Garcia [Thu, 4 Aug 2022 15:43:33 +0000 (17:43 +0200)]
Fix physical_device_groups custom instance usage
The test is using a custom instance but misusing the default instance in
some API calls and expecting some consistency in the results.
In addition, the custom instance was not correctly collecting validation
error messages and some VkPhysicalDeviceGroupProperties structures were
not setting the sType as expected.
Affects:
dEQP-VK.info.physical_device_groups
Components: Vulkan
VK-GL-CTS issue: 3876
Change-Id: I3900723034bddb2dee0aaaab549cc6d362b1339e
Pan Gao [Wed, 3 Aug 2022 12:48:18 +0000 (20:48 +0800)]
Fix memory barrier for alias sparse memory
Memory read/write order through different views that are aliased
need to be handled in application. Otherwise, implementation may
give undefined results.
Affects:
dEQP-VK.sparse_resources.image_sparse_memory_aliasing.*
Components: Vulkan
VK-GL-CTS issue: 3709
Change-Id: I8739aeeaf05103942158451196480734f62ab835
Matthew Netsch [Wed, 10 Aug 2022 15:58:15 +0000 (15:58 +0000)]
Revert "Fix undefined behaviour by allowing NaNs"
This reverts commit
8b95b2a1da75ca3dc3a2cfac98ce10d9a699687e.
Reason for revert: Amber verify failures on main
Components: Vulkan
VK-GL-CTS Issue: 3787
Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined
Change-Id: Ifdf1a47a32091182fa51353748ffcf4eeab92d51
Matthew Netsch [Thu, 4 Aug 2022 16:21:38 +0000 (16:21 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I4d02b59e782c15f9add2d29da2eaa960847e1d93
Marcin Kańtoch [Tue, 26 Jul 2022 15:25:41 +0000 (17:25 +0200)]
Fix undefined behaviour by allowing NaNs
One graphicsfuzz test contains computations with the float constant 0x1.8p+128.
This constant represents a NaN value. The computation with undef in the test
allows any optimization/triggers undefined behavior and the driver is free
to crash. Adding OpExecutionMode %4 SignedZeroInfNanPreserve 32 to the CTS fixes
this by allowing NaNs.
Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined
Components: Vulkan
VK-GL-CTS issue: 3787
Change-Id: Id7140deddec240fdc5d9b1712c974199fa06b250
Matthew Netsch [Thu, 4 Aug 2022 15:54:42 +0000 (15:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I2adb1c6a23f05f9b1bc09a86852a39d3aa12ceaf
Matthew Netsch [Fri, 29 Jul 2022 17:43:14 +0000 (10:43 -0700)]
Fix Api version check with loaders
Loaders return instance version that they support,
which may be greater than version ICDs support.
Change version check to use device version instead
of instance version for the purposes of verifying if
this version of CTS is legal to be used with the ICD.
Components: Vulkan
VK-GL-CTS Issue: 3863
Affects:
* dEQP-VK.api.version_check.version
Change-Id: I57e9a4aeee0ebda3fee1396c780d03941959ba6f
Chris Hambacher [Thu, 21 Jul 2022 18:28:01 +0000 (13:28 -0500)]
Fix partial heap usage in protected_memory android swapchain tests
On devices with small amounts of protected memory, limitting usage to
25% of the total protected memory causes tests to be skipped. Tweak
to allow for full usage of the protected heap.
Affects:
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.min_image_count
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.image_format
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.image_extent
Components: Vulkan
VK-GL-CTS Issue: 3296
Change-Id: I43c1cfc8d0e44d401952317158829f1a2da241a1
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
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
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