platform/upstream/VK-GL-CTS.git
21 months agoFix for api.buffer_marker memory map failure
Reid Yeager [Wed, 1 Feb 2023 21:33:04 +0000 (21:33 +0000)]
Fix for api.buffer_marker memory map failure

Fixes the VK_ERROR_MEMORY_MAP_FAILED error when constructing a HostPtr
in some api.buffer_marker cases
No longer passing whole-buffer size to memory map with offset

Affects: dEQP-VK.api.buffer_marker.*
VK-GL-CTS issue: 4264
Components: Vulkan

Change-Id: I56faa6e44acb3e55932bbb3f8e74109b177d17f4

21 months agoSkip over video.decode tests for 32-bit CTS
Piers Daniell [Thu, 26 Jan 2023 22:00:03 +0000 (15:00 -0700)]
Skip over video.decode tests for 32-bit CTS

These tests use 64-bit library binaries to do the video parsing,
so they cannot be used on 32-bit builds of CTS. These tests
are reported a not supported for 32-bit CTS.

Affects:

dEQP-VK.video.decode.*

Components: Vulkan

VK-GL-CTS issue: 4253

Change-Id: I76772c594c783bb7d6d44ddeb5df71cd86be5f5f

21 months agoVulkan video only for windows and linux
Marcin Zając [Fri, 23 Dec 2022 15:13:48 +0000 (16:13 +0100)]
Vulkan video only for windows and linux

Currently vulkan video is only part of the linux
and windows platforms. The video module is therefore
completely excluded from the compilation target
on every other platform, and ffmpeg external library
will not be downloaded by fetch_sources.py script.

Affect tests:
* dEQP-VK.video.*

Components: Framework, Vulkan

VK-GL-CTS issue: 4185

Change-Id: I24c9c3c9f2a9853a3db47028bececa9f96d592ad

21 months agoUpdate ffmpeg version
Stéphane Cerveau [Thu, 27 Oct 2022 12:16:04 +0000 (14:16 +0200)]
Update ffmpeg version

Mismatch ffmpeg version was causing crash
Cleanup ffmpeg multiplatform support
Avoid special ffmpeg case in SourcePackage definition
Update the samples to use only elementary streams
generated with:

ffmpeg -i sample.mp4 -vcodec copy sample.h264

Affect tests:

dEQP-VK.video.*

Components: Framework, Vulkan

VK-GL-CTS issue: 4227

Change-Id: I880f77ae3d5bbf468e6273b3825ea38741ab46d4

21 months agoFix to EDS3 tests for platforms that don't support mixed samples
Piers Daniell [Fri, 20 Jan 2023 21:36:35 +0000 (14:36 -0700)]
Fix to EDS3 tests for platforms that don't support mixed samples

The EDS3 tests for rasterizationSamples that use the two-draws sequence
hit a condition where the framebuffer sample count does not match
the rasterization sample count. This is only valid usage on platforms
that implement VK_AMD_mixed_attachment_samples or
VK_NV_framebuffer_mixed_samples.

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

Components: Vulkan
VK-GL-CTS issue: 4220

Change-Id: I6e846a5c217656cc305b607d78c75a70d2e21fd7

21 months agoFix image barrier in ray tracing pipeline build tests
ziga-lunarg [Mon, 16 Jan 2023 12:45:27 +0000 (13:45 +0100)]
Fix image barrier in ray tracing pipeline build tests

Use the correct combination of access mask and pipeline stage

Components: Vulkan

VK-GL-CTS issue: 4202

Affected tests:
dEQP-VK.ray_tracing_pipeline.build.*

Change-Id: I5ae3a9512dd29f363e2acfc56b451edc502ebafb

21 months agoSet a pointer to a bunch of VK_FORMAT_UNDEFINED instead of garbage.
Hyunjun Ko [Thu, 12 Jan 2023 07:36:57 +0000 (16:36 +0900)]
Set a pointer to a bunch of VK_FORMAT_UNDEFINED instead of garbage.

To avoid a crash on the validation layer.

Affects:
dEQP-VK.pipeline.*.multisample.*.garbage_color_attachment.*
dEQP-VK.fragment_shading_rate.dynamic_rendering.primary_cmd_buff.pipeline_library.misc_tests.*
dEQP-VK.fragment_shading_rate.dynamic_rendering.primary_cmd_buff.fast_linked_library.misc_tests.*

VK-GL-CTS Issue: 4222

Components: Vulkan
Change-Id: I1457840f019f944a5c9d33574d9bf97913c86c89

21 months agoFix modifier tests - Add format to unsupported format list
Matthew Netsch [Wed, 18 Jan 2023 17:47:22 +0000 (09:47 -0800)]
Fix modifier tests - Add format to unsupported format list

Add VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 format which was
returning - Unknown function: Assertion `DE_FALSE' failed
to unsupported formats list.

Affected tests:
dEQP-VK.drm_format_modifiers.*

Components: Vulkan
VK-GL-CTS Issue: 4198

Change-Id: Ibca532471d0aee4bc0f76e68960294dc109cc87c

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5
Piotr Byszewski [Mon, 30 Jan 2023 08:38:48 +0000 (09:38 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5

Change-Id: Idb97b061d30a64beae623ba5f4a1b30b0ee10d63

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Piotr Byszewski [Sat, 28 Jan 2023 16:27:27 +0000 (17:27 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: I6ca6dbc9b10c6a6ab76bae3c9f2593be1f9f811e

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Piotr Byszewski [Fri, 27 Jan 2023 16:47:52 +0000 (17:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: Ia7e33918ec57b26ca43a9b8468bc134c15ea9915

21 months agoFix colorAttachmentCount mismatch in stencil tests
ziga-lunarg [Tue, 17 Jan 2023 11:31:56 +0000 (12:31 +0100)]
Fix colorAttachmentCount mismatch in stencil tests

pColorBlendState::attachmentCount must match colorAttachmentCount of the
subpass used in the pipeline

Components: Vulkan

VK-GL-CTS issue: 4229

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

Change-Id: I1656cda0af45ae3df65c25790e360a17863273d4

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Piotr Byszewski [Fri, 27 Jan 2023 11:58:28 +0000 (12:58 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ib94de3bf6ded8ac215a706e0005631d397fce704

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Piotr Byszewski [Fri, 27 Jan 2023 10:30:35 +0000 (11:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Ic6015e95ad8e7d411948ec7ef1ccaf33081212f7

21 months agoFix rgba10x6 feature check in texture filtering tests
ziga-lunarg [Fri, 6 Jan 2023 17:09:46 +0000 (18:09 +0100)]
Fix rgba10x6 feature check in texture filtering tests

If VK_IMAGE_USAGE_SAMPLED_BIT is used when creating the image
VkSamplerYcbcrConversionInfo is required in the pNext chain, if format
is  VK_FORMAT_R10XgG10X6B10X6A10X6_UNORM_4PACK16 and
formatRgba10x6WithoutYCbCrSampler feature is not enabled

Components: Vulkan

VK-GL-CTS issue: 4206

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

Change-Id: I296ac69902f87b301f4e2930d28b171e8ce02a13

21 months agoAdd missing support check in texture filtering with rgba10x6 format
ziga-lunarg [Fri, 6 Jan 2023 16:34:34 +0000 (17:34 +0100)]
Add missing support check in texture filtering with rgba10x6 format

Feature formatRgba10x6WithoutYCbCrSampler must be enabled when
VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 is used in these tests,
because more than 1 mip level is used and only formats which do not
require sampler YCbCR conversion can be used

Components: Vulkan

VK-GL-CTS issue: 4205

Affected tests:
dEQP-VK.texture.filtering.cube.*

Change-Id: I3bdd286af2d0f2c19443e5d64304c69e43a43095

21 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Piotr Byszewski [Fri, 27 Jan 2023 08:48:28 +0000 (09:48 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I29ea16db0e7ddc2b374888f41ed07523b233aedb

21 months agoFix image barrier in ray tracing pipeline build tests
ziga-lunarg [Sun, 15 Jan 2023 11:47:18 +0000 (12:47 +0100)]
Fix image barrier in ray tracing pipeline build tests

Use the correct combination of access mask and pipeline stage

Components: Vulkan

VK-GL-CTS issue: 4202

Affected tests:
dEQP-VK.ray_tracing_pipeline.build.*

Change-Id: I185c3787b6bfa24c79f5fbd063fc041d000ae0f4

21 months agoDo not allow to call vkSetEvent after submission, which is invalid.
Hyunjun Ko [Fri, 20 Jan 2023 02:11:02 +0000 (11:11 +0900)]
Do not allow to call vkSetEvent after submission, which is invalid.

The spec says:

"If a command buffer submission waits for any events to be signaled,
the application must ensure that command buffer submissions will be
able to complete without any subsequent operations by the application.
Events signaled by the host must be signaled before the command buffer
waits on those events."

This means it's not valid to signal an event on the host after submission
of a command buffer containing a wait for the event. Also it forces the
command buffer to stop for an unknown amount of time, as much as the time
needed for the host to signal the event with vkSetEvent.

However there were some CTS tests doing like this, which should be
fixed.

For vktApiExternalMemoryTests.cpp,
There was a vkSetEvent call after submission to hold a command to be
executed before signaling to get a native file descriptor, which is
not valid. So the tests should allow to get -1. Also we do an atomic calculation
to avoid singalling right after submit when trying to get a native fd.
The simple atomic calculation is evaluated to take about 10ms.

For vktApiExternalMemoryTests.cpp and vktMemoryExternalMemoryHostTests.cpp,
replace vkSetEvent with timeline semaphore to signal from the host.

Affects:
dEQP-VK.api.external.semaphore.*
dEQP-VK.api.external.fence.*
dEQP-VK.api.command_buffers.secondary_execute_twice
dEQP-VK.memory.external_memory_host.synchronization.synchronization

VK-GL-CTS Issue: 4075

Components: Vulkan
Change-Id: I5544bb15a418bbbbd6552ca04bec673a56ca3109

21 months agoAdd missing buffer memory flush
Sviatoslav Peleshko [Thu, 5 Jan 2023 23:40:46 +0000 (01:40 +0200)]
Add missing buffer memory flush

We do a memcpy to the buffer, but don't flush it. If we don't use
host-coherent memory for this buffer it might sometimes lead to
corruption (when we later invalidate the buffer's memory to get
results from the shader).

Components: Vulkan

Affected tests:
dEQP-VK.query_pool.statistics_query.compute_shader_invocations.*
dEQP-VK.query_pool.statistics_query.*.compute_shader_invocations.*

Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Change-Id: I2f9491d6cacf39fe6a00d7624e2aa474615421ce

21 months agoUse correct extent for 1D compute texel_view_compatible tests
Connor Abbott [Tue, 29 Nov 2022 11:17:17 +0000 (12:17 +0100)]
Use correct extent for 1D compute texel_view_compatible tests

We weren't sanitizing the size in the parameters, resulting in
copyDataToImage() passing an extent with a non-1 height to when
uploading to a 1D image. Sanitize fullSize, and remove a case where
where we were workaround it not being sanitized.

Components: Vulkan

Affects: dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.*

VK-GL-CTS Issue: 4143

Change-Id: Icdb50c09137a947f47b1afc7426e53e73c31f689

21 months agoAdd VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR to pre-rast state and
Hyunjun Ko [Wed, 11 Jan 2023 09:02:51 +0000 (18:02 +0900)]
Add VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR to pre-rast state and
fragment shader state too.

Affects:
dEQP-VK.fragment_shading_rate.*.pipeline_library.*
dEQP-VK.fragment_shading_rate.*.fast_linked_library.*
dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.*
dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.*

VK-GL-CTS Issue: 4217

Components: Vulkan

Change-Id: I47ece9b0367ad4edf0477035e9359e84bdc24c73

21 months agoUpdate Vulkan Video tests to the latest spec versions
Piers Daniell [Tue, 10 Jan 2023 19:16:50 +0000 (12:16 -0700)]
Update Vulkan Video tests to the latest spec versions

Now that the Vulkan Video 1.0 release has been made, the
final spec version numbers need to be updated to use the
published versions. Also the updated nvparser needs
to be picked up, which was also updated to the published
extension version.

This CL also updates the known device extensions list so
the dEQP-VK.info.device_extensions tests pass with implementations
that expose the newly published video extensions.

Affects:

dEQP-VK.info.device_extensions
dEQP-VK.video.*

VK-GL-CTS issue: 4214

Change-Id: Ia1463fd25e13b7b74164a78aecf10047d9acc930

21 months agoMultiple fixes to EDS3 tests
Ricardo Garcia [Wed, 11 Jan 2023 14:28:17 +0000 (15:28 +0100)]
Multiple fixes to EDS3 tests

This commit fixes the following issues in EDS3 tests:

* Representative fragment tests were not taking into account test
  variants using two draws would perform some of those draws with the
  representative fragment test enabled and some others without it,
  resulting in fewer invocations than expected.

* Shading rate image tests were not properly freeing the corresponding
  custom device.

* Shading rate image tests were not taking into account some test
  variants also need mesh shading support (this was not taken into
  account when putting together EDS3 and mesh shaders).

* For the coverageReductionMode tests it now uses
  vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV
  to determine which rasterizationSample/colorSample/coverageReductionMode
  combinations are valid.

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

Components: Vulkan
VK-GL-CTS issue: 4220

Change-Id: Id137327075e1182358be3968675e0c8a5940b6ca

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5
Piotr Byszewski [Mon, 23 Jan 2023 11:50:36 +0000 (12:50 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5

Change-Id: I04c012af54c82eb4eba8661f5bbc56eca50f5010

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Piotr Byszewski [Mon, 23 Jan 2023 10:31:34 +0000 (11:31 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: I45389a45424b0978ce6ac4b08108717c486e1bee

21 months agoAdded missing android hardware buffer formats
Mohd Faisal [Wed, 10 Aug 2022 14:04:04 +0000 (15:04 +0100)]
Added missing android hardware buffer formats

Android hardware buffer formats are added in image compression
control test. Also, updated the test names.

Components: Vulkan
VK-GL-CTS issue: 3883

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

Change-Id: I39643d186200d63a81cff2eb244bbdf085954a03

21 months agoycbcr: Align properly offset used for BindImageMemory2
Alejandro Piñeiro [Thu, 12 Jan 2023 12:09:47 +0000 (13:09 +0100)]
ycbcr: Align properly offset used for BindImageMemory2

The test is using directly the requirements size, but it should be
ensure that is aligned to the requirements alignment.

Components: Vulkan

VK-GL-CTS Issue: 4223

Affects:
dEQP-VK.ycbcr.subresource_offset.*

Change-Id: I219fb38704ac3b2c0bd6d4f9afbde6d2265e1be6

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Piotr Byszewski [Sat, 21 Jan 2023 16:24:32 +0000 (17:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I63428d6dfccd323392ff975aef0a1a3ace0f52da

21 months agoAllow sample mask test after sample counting
James Fitzpatrick [Mon, 9 Jan 2023 15:22:38 +0000 (15:22 +0000)]
Allow sample mask test after sample counting

After vulkan!5640 it is now legal for sample mask test to be executed
after sample counting when Early Fragment Tests is enabled.

Update the early fragment tests with sample counting to allow for this
behaviour by reporting a Quality Warning if the sample mask is ignored
when calcuating the returned sample count.

Affects: dEQP-VK.fragment_operations.early_fragment.sample_count_early_fragment_tests_depth_*

Components: vulkan

VK-GL-CTS issue: 4218

Change-Id: I61ca28f6570e1835b19c03ae1b1d93cad0228190

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Piotr Byszewski [Fri, 20 Jan 2023 16:05:14 +0000 (17:05 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ie8b2a9e9b203ff93bd2c6f30c796bf6f560a9c40

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Piotr Byszewski [Fri, 20 Jan 2023 12:48:26 +0000 (13:48 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Iaa91df30fc4231c3a428fef1c74c8d9aa72720ba

21 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Piotr Byszewski [Fri, 20 Jan 2023 10:18:18 +0000 (11:18 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I40db0dabbedb2e8245c3597bec80832a47f1658d

21 months agoFix merge error in FSR srlayered tests
Slawomir Cygan [Thu, 12 Jan 2023 15:27:44 +0000 (16:27 +0100)]
Fix merge error in FSR srlayered tests

Reapply last chunk from 853897a8722 which seems to
have been broken in a merge: layercount value was passed
instead of viewFormatCount.

This is fixes a regression introduced by  10618, which was exposed
after being promoted to vulkan-cts-1.2.8+.

Components: Vulkan

VK-GL-CTS Issue: 4224
VK-GL-CTS Issue: 4226

Affects: dEQP-VK.fragment_shading_rate.*
Change-Id: Ib8f5b180368fe9bf3c32f349c2475a4932f30fbf

21 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Piotr Byszewski [Thu, 19 Jan 2023 17:59:29 +0000 (18:59 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Iaae2490f0ec3069759a7660dee175cfdc3668622

21 months agoUpdate scripts for Android build
Aitor Camacho [Tue, 3 Jan 2023 18:25:23 +0000 (19:25 +0100)]
Update scripts for Android build

 - Use d8 instead of dx due to deprecation
 - Use apksigner instead of jarsigner for signature scheme v2 required by newer SDKs
 - Move apk signing to be last step (required for signature scheme v2)
 - Force uncompressed arsc files (required for SDK versions 30 and up)
 - Add '--tool-api' argument for selecting build tools version
 - Add permission for reading external storage in manifest

VK-GL-CTS Issue: 4163

Components: Framework
Change-Id: Iea4429f861148168ffe680cdf9a497cb467b8d6a

21 months agoFix merge mistake related to android/*/*.txt files
Piotr Byszewski [Tue, 17 Jan 2023 09:43:42 +0000 (10:43 +0100)]
Fix merge mistake related to android/*/*.txt files

In recent merge from 1.3.1 to 1.3.2 branch a mistake was made
that affected five android related txt files. This change
restores those files to content before the merge.

Components: Vulkan

VK-GL-CTS issue: 4228

Removed tests:
dEQP-VK.*

Change-Id: I51cb8a3869883621edd8e3af4c2863adfd8739ba

21 months agoFix vertex and primitive count in mesh shader query tests
Ricardo Garcia [Fri, 13 Jan 2023 11:20:12 +0000 (12:20 +0100)]
Fix vertex and primitive count in mesh shader query tests

They were using fixed constants instead of taking into account the
image width and the type of primitive.

In addition, the commit fixes invalid usage of gl_DrawID from the mesh
shader when task shaders were present.

Affects:
dEQP-VK.mesh_shader.ext.query.*

Components: Vulkan
VK-GL-CTS issue: 2991

Change-Id: Iac2b848e801219748bcf52cb443f5bad757abd5f

21 months agoFix mipmap calculation in copy_and_blit tests
Charlie Turner [Mon, 12 Dec 2022 11:48:34 +0000 (11:48 +0000)]
Fix mipmap calculation in copy_and_blit tests

The tests were using the wrong formula to compute the number of mip
levels.  No functional change, since all test dimensions are square,
but save a copy and paste error in the future.

Affects:
dEQP-VK.api.copy_and_blit.*.image_to_image.array.*
dEQP-VK.api.copy_and_blit.*.blit_image.all_formats.generate_mipmaps.from_base_level.*
dEQP-VK.api.copy_and_blit.*.blit_image.all_formats.generate_mipmaps.from_previous_level.*

Components: Vulkan

Change-Id: I7c5219e7df07954fb1aa0010eafeeb3f6c9733bc

21 months agoRemove VK_AMD_shader_fragment from default device's extension list
Charlie Turner [Wed, 21 Dec 2022 19:59:23 +0000 (19:59 +0000)]
Remove VK_AMD_shader_fragment from default device's extension list

It conflicts with VK_EXT_buffer_descriptor, which is a sensible
feature to keep as default, rather than vice versa.

The single testsuite that uses this extension has been refactored to
create a custom device for it instead.

This fixes the following validation error,

Validation Error: [ VUID-VkDeviceCreateInfo-None-08095 ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xe6a1c10a | vkCreateDevice(): If the descriptorBuffer feature is enabled, ppEnabledExtensionNames must not contain VK_AMD_shader_fragment_mask. The Vulkan spec states: If descriptorBuffer is enabled, ppEnabledExtensionNames must not contain VK_AMD_shader_fragment_mask (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkDeviceCreateInfo-None-08095)

The next validation error noticed was,

Validation Error: [UNASSIGNED-CoreValidation-Shader-MissingInputAttachment ] Object 0:handle = 0x9fde6b0000000014, type = VK_OBJECT_TYPE_SHADER_MODULE; Object 1: handle = 0x980f360000000011, type = VK_OBJECT_TYPE_PIPELINE_LAYOUT; | MessageID = 0xbd90d7b7 | Shader consumes input attachment

This was fixed by hard-coding the input attachment to zero, rather
than numLayers (1) which was not being provided by the static subpass
layout.

There is a remaining validation error,

Validation Error: [ VUID-VkGraphicsPipelineCreateInfo-renderPass-06061 ] Object 0: handle = 0x1426c490, type = VK_OBJECT_TYPE_DEVICE; | Me
ssageID = 0x399b0a5e | vkCreateGraphicsPipelines(): pCreateInfos[0] is being created with fragment shader state and renderPass = VK_NULL_HANDLE, but fragme
nt shader includes InputAttachment capability. The Vulkan spec states: If the pipeline is being created with fragment shader state and renderPass is VK_NUL
L_HANDLE, fragment shaders in pStages must not include the InputAttachment capability (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vk
spec.html#VUID-VkGraphicsPipelineCreateInfo-renderPass-06061)

However, this one is a bug in layers, not taking into account the fact
pipeline libraries are enabled when validation stages with input
attachment capabilities. Reported
https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/4989

VK-GL-CTS issue: 4187

Components: Framework, Vulkan

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

Change-Id: I01fc1ca4f5e1872a7fabda945d24faad7c9bf622

21 months agoFix pNext chain in promoted features struct tests
ziga-lunarg [Fri, 30 Dec 2022 21:12:21 +0000 (22:12 +0100)]
Fix pNext chain in promoted features struct tests

Structures which were promoted must not be in the pNext chain if the
promoted structures is in the chain

Components: Vulkan

VK-GL-CTS issue: 4193

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

Change-Id: Ided1d57bdb06b2ba1e8808a765df6129d4205eb9

21 months agoFix use protected memory device
Mohd Faisal [Mon, 12 Dec 2022 13:32:59 +0000 (13:32 +0000)]
Fix use protected memory device

To create protected buffer use the protected memory enabled
device, otherwise use the default device.

Components: Vulkan

Affects: dEQP-VK.api.buffer_memory_requirements.*

VK-GL-CTS issue: 4173

Change-Id: I4882ad753a3cd940d6a2e8d01cca7c32d92be72e

21 months agoPrioritize downloaded ffmpeg over system ffmpeg
Ricardo Garcia [Tue, 10 Jan 2023 14:24:48 +0000 (15:24 +0100)]
Prioritize downloaded ffmpeg over system ffmpeg

This avoids breaking the build in many systems that have ffmpeg
installed including its development files and they don't match what
VK-GL-CTS expects.

VK-GL-CTS issue: 4212

Change-Id: I2df1347e6ce30d7aaa4cc876a7026ed5017238b4

21 months agoSkip testing the query result, if query was reset just before getting the result
Slawomir Cygan [Tue, 27 Dec 2022 18:37:17 +0000 (19:37 +0100)]
Skip testing the query result, if query was reset just before getting the result

The query result is undefined after resetting the query. Only availability bit
should be tested in this case.

Components: Vulkan

VK-GL-CTS Issue: 4190

Affects: dEQP-VK.mesh_shader.ext.query.*.reset_before.*

Change-Id: I24d96fa71639505d2c4467971c75577a0dc02b97

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5
Piotr Byszewski [Mon, 16 Jan 2023 10:30:49 +0000 (11:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/vulkan-cts-1.3.5

Change-Id: I8647fe247b3d23a554c87c16ec850a32647c48c0

21 months agoRemove tests that use DS format in inheritance info, but have no depth attachment...
Slawomir Cygan [Tue, 6 Dec 2022 12:45:28 +0000 (13:45 +0100)]
Remove tests that use DS format in inheritance info, but have no depth attachment in vkCmdBeginRendering

Remove test cases, that target functionality that is against following spec wording:

"""
If vkCmdExecuteCommands is being called within a render pass instance begun with vkCmdBeginRendering and the
VkRenderingInfo::pDepthAttachment->imageView parameter to vkCmdBeginRendering was VK_NULL_HANDLE, the value of the  >
depthAttachmentFormat member of the VkCommandBufferInheritanceRenderingInfo structure included in the pNext chain of
VkCommandBufferBeginInfo::pInheritanceInfo used to begin recording each element of pCommandBuffers must be VK_FORMAT_UNDEFINED
"""

VK-GL-CTS Issue: 4160

Components: Vulkan

Affects: dEQP-VK.dynamic_rendering.partial_secondary_cmd_buff.*.unused_clear_attachments

Change-Id: Ia67e0e7115dc69e55544c5de60b9a4ed6c17f60c

21 months agoRemove OpImage*Dref* from mismatch type tests
Mohd Faisal [Fri, 9 Dec 2022 15:52:28 +0000 (15:52 +0000)]
Remove OpImage*Dref* from mismatch type tests

Mismatch type group testing non-depth formats and using
OpImage*Dref* instructions with vulkan formats not having depth
component is invalid usage.

Extending the mismatch test type group to include depth/stencil
format later would require checking format features for
VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT

Components: Vulkan

Affects: dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.*

VK-GL-CTS issue: 4172

Change-Id: I2353e235295cff4609799e14298e6df7d6a66221

21 months agoFix layer count in barriers in shader_layer tests
ziga-lunarg [Fri, 30 Dec 2022 16:04:22 +0000 (17:04 +0100)]
Fix layer count in barriers in shader_layer tests

Some barriers only transition the first layer of the image, instead of
all the layers used

Components: Vulkan

VK-GL-CTS issue: 4191

Affected tests:
dEQP-VK.draw.dynamic_rendering.*.shader_layer.*

Change-Id: I35d78b4575d450fbd7c3718ff2a639316f6113e4

21 months agoFix stencilAttachmentFormat in dynamic render clear tests
ziga-lunarg [Fri, 30 Dec 2022 19:18:21 +0000 (20:18 +0100)]
Fix stencilAttachmentFormat in dynamic render clear tests

The format in VkPipelineRenderingCreateInfo::stencilAttachmentFormat
must have a stencil aspect or be VK_FORMAT_UNDEFINED

Components: Vulkan

VK-GL-CTS issue: 4192

Affected tests:
dEQP-VK.draw.dynamic_rendering.*.load_clear_draw*

Change-Id: Ib0f055dd5ce49f5a2dff797274d5a243c46e8619

21 months agoAdd missing flags in dynamic rendering with secondary cmd buffers tests
ziga-lunarg [Mon, 2 Jan 2023 12:10:45 +0000 (13:10 +0100)]
Add missing flags in dynamic rendering with secondary cmd buffers tests

If vkCmdExecuteCommands is called within a dynamic render pass,
VkRenderingInfo::flags must include
VK_RENDERING_CONTENTS_SSECONDARY_COMMAND_BUFFERS_BIT

Components: Vulkan

VK-GL-CTS issue: 4194

Affected tests:
dEQP-VK.draw.dynamic_rendering.*.differing_interpolation.*

Change-Id: Ib8e3fa1e3144a6847a87dbf1542912c5c179e903

21 months agoFix tests that enable depth testing on undefined depth buffer
Iago Toral Quiroga [Mon, 9 Jan 2023 10:24:48 +0000 (11:24 +0100)]
Fix tests that enable depth testing on undefined depth buffer

There are tests in the load_store_op_none category set up like this:

Depth load: NONE
Depth store: NONE
Depth testing: ON
Depth op: GREATER
Depth write: OFF

This configuration is bogus because the depth buffer will be
undefined as this particular test won't initialize the render
area inside the render pass and it enabled depth testing
with a comparison function that depends on the contents of the
depth buffer.

Fix it by detecting this scenario and making the depth comparison
ALWAYS to ensure that depth testing doesn't drop any samples,
which is what the test expects.

Affects:
dEQP-VK.*.load_store_op_none.depth*

Components: Vulkan
VK-GL-CTS issue: 4209

Change-Id: Icab24dcf7f46156b7b59541ea64e5823deec53d1

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Piotr Byszewski [Mon, 16 Jan 2023 08:24:19 +0000 (09:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: I17cf242ff0a054151c0af294fdfb84646e743244

21 months agoUse tolerance for comparison in linear interpolation tests.
Amber [Tue, 3 Jan 2023 10:17:24 +0000 (11:17 +0100)]
Use tolerance for comparison in linear interpolation tests.

Components: Vulkan
VK-GL-CTS issue: 4159

Affected tests:
dEQP-VK.draw.*.linear_interpolation.*

Change-Id: I026bb0128dc78ddab75cbfdcaabab00a8d05386a

21 months agoFix memory offset in dedicated_allcation tests
ziga-lunarg [Mon, 2 Jan 2023 17:28:59 +0000 (18:28 +0100)]
Fix memory offset in dedicated_allcation tests

When dedicated allocation is used, memory offset must be 0

Components: Vulkan

VK-GL-CTS issue: 4195

Affected tests:
dEQP-VK.api.copy_and_blit.dedicated_allocation.*

Change-Id: I3bee6c17e7de2ee8bae5f218df9d2e03dc37689d

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Piotr Byszewski [Sun, 15 Jan 2023 16:59:05 +0000 (17:59 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I7cfcfe8c9e3549a509420cbe1b63d089b3ee00dc

21 months agoFix color blend state in multisample mixed count tests
Ricardo Garcia [Tue, 10 Jan 2023 11:01:08 +0000 (12:01 +0100)]
Fix color blend state in multisample mixed count tests

Some test variants were passing a null color blend attachment state on
pipeline creation, when the subpass was being created with one color
attachment.

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

VK-GL-CTS issue: 4208
Components: Vulkan

Change-Id: I9e0c7a5be907baef3c2b7bb6286d92eaa6749a66

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Piotr Byszewski [Sun, 15 Jan 2023 10:43:24 +0000 (11:43 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I8ca4c0773084ff7b66bf7378ee9b610c693f15c6

21 months agoFix bind-transfer synchronization in sparse texture tests
Dae Kim [Fri, 16 Dec 2022 11:43:24 +0000 (11:43 +0000)]
Fix bind-transfer synchronization in sparse texture tests

The copyBufferToImage() utility function submits a command buffer with a
copy-buffer-to-image transfer operation. The caller can optionally pass
a semaphore for the transfer to wait on, but the semaphore's wait flags
are set to VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, which does not include
transfer operations.

As a consequence of this, the transfer operation may ignore the wait
semaphore. In the affected test set this means that the transfer may
happen before sparse bind operations are completed.

Affects: dEQP-VK.texture.*sparse*

Components: Vulkan

VK-GL-CTS issue: 4183

Change-Id: Ia0f0c721e492703301440dbfcf07ed6495fddb1e

21 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Piotr Byszewski [Fri, 13 Jan 2023 18:24:46 +0000 (19:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Icc5dc1c0cbfd798e6df0e7b88d4830e1549a4126

21 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Piotr Byszewski [Fri, 13 Jan 2023 16:21:02 +0000 (17:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I2142832024febea1baee33b1df04af6921edb846

21 months agoRemove duplicated test groups
Piotr Byszewski [Fri, 13 Jan 2023 12:34:18 +0000 (13:34 +0100)]
Remove duplicated test groups

While adding support for dynamic rendering to renderpass group
a mistake was made that added 3 groups with the same tests to both
renderpass2 group and legacy renderpass group.

This mistake was fixed on 1.3.1 branch but is present on 1.2.8
and 1.3.0. There is no need to execute same tests twice - this
change removes duplicates. This fix should be propagated only to
1.3.0.

Components: Vulkan

VK-GL-CTS issue: 4225

Removed tests:
dEQP-VK.renderpass.depth_stencil_resolve.*
dEQP-VK.renderpass.fragment_density_map.*
dEQP-VK.renderpass2.multiple_subpasses_multiple_command_buffers.test

Change-Id: I571e499ead038acf1744c356b884f2be966e3c15

21 months agoFix oldLayout in image barriers in copy and blit tests
ziga-lunarg [Thu, 22 Dec 2022 12:52:24 +0000 (13:52 +0100)]
Fix oldLayout in image barriers in copy and blit tests

The same barriers are used twice, but the oldLayout is not updated

Components: Vulkan

VK-GL-CTS issue: 4054

Affected tests:
dEQP-VK.api.copy_and_blit.*

Change-Id: I8fd622846a2c9ce840ec6bfb5a431ae66a5af06f

21 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Piotr Byszewski [Fri, 13 Jan 2023 10:11:20 +0000 (11:11 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I1139cfa0a1d27a08bd6d3c72b2d65fd754edc886

21 months agoRemove invalid separate_layouts tests on older branches
ziga-lunarg [Fri, 16 Dec 2022 16:31:54 +0000 (17:31 +0100)]
Remove invalid separate_layouts tests on older branches

These tests were fixed, but only on 1.3.2 newer, they should be removed
on older branches

Components: Vulkan

VK-GL-CTS issue: 3527

Removed tests:
dEQP-VK.renderpass2.depth_stencil_resolve.*separate_layouts.*

Change-Id: I467ea14cc5c2eb26723cc9e2453ea5a11a1556b9

22 months agoUpdate known conformance version for 1.3.5.0
Matthew Netsch [Mon, 9 Jan 2023 17:50:04 +0000 (09:50 -0800)]
Update known conformance version for 1.3.5.0

Components: Vulkan, Framework

Affects:
dEQP-VK.api.driver_properties.conformance_version

Change-Id: I0c959d1714251db1a571bc19890e19ce7e2cc493

22 months agoFix missing global_priority_transition tests
Piotr Byszewski [Wed, 21 Dec 2022 16:00:46 +0000 (17:00 +0100)]
Fix missing global_priority_transition tests

After recent vk video merge global_priority_transition tests
were removed from test tree. This issue is probably a result
of mistake that was done during video CL rebase 5 months ago.
This CL adds global_priority_transition tests back to test tree.

VK-GL-CTS issue: 4186

Components: Vulkan

Affects:
dEQP-VK.synchronization.*

Change-Id: I7d3ad9c6648ef560a0ce142574f7ec2ca3c0a504

22 months agoAdd tests for BufferView access with all formats supported interacted with fetchTexel...
Hyunjun Ko [Wed, 23 Nov 2022 04:35:33 +0000 (13:35 +0900)]
Add tests for BufferView access with all formats supported interacted with fetchTexel and ImageLoad

New tests:
dEQP-VK.api.buffer_view.access.uniform_texel_buffer.*
dEQP-VK.api.buffer_view.access.storage_texel_buffer.*

VK-GL-CTS Issue: 3812

Components: Vulkan

Change-Id: I02130542d4eb29bd9d0daf32c5c1727b7a53635f

22 months agoWarn if STORAGE_*_ATOMIC_BIT is set on multi-component formats.
Charlie Turner [Tue, 13 Dec 2022 18:24:44 +0000 (18:24 +0000)]
Warn if STORAGE_*_ATOMIC_BIT is set on multi-component formats.

VK-GL-CTS issue: 4174

Components: Vulkan

Affects: dEQP-VK.api.info.format_properties.*
Change-Id: I2ee730684aceb18130cc5f8a0d6cbad4865429b5

22 months agoEnable missing dedicated allocation tests in copy_and_blit
Charlie Turner [Mon, 12 Dec 2022 11:28:43 +0000 (11:28 +0000)]
Enable missing dedicated allocation tests in copy_and_blit

The compatible formats to test were being indexed from the wrong
array, colorImageFormatsToTest fortunately has fewer elements than
dedicatedAllocationImageToImageFormatsToTest so nothing was crashing,
but the CTS was missing test coverage here.

New tests:
dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.*r16g16b16a16_*
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.*r16g16b16a16_*
dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.*r32g32b32_*
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.*r32g32b32_*
dEQP-VK.api.copy_and_blit.copy_commands2.image_to_image.*r32g32b32a32_*
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.*r32g32b32a32_*

Components: Vulkan
Change-Id: Ifbfad14e2d2a1b5b7f7b643eb41b36f8fa90f19a

22 months agoTreat DynamicLibrary library list as alternatives
Ricardo Garcia [Mon, 12 Dec 2022 09:17:21 +0000 (10:17 +0100)]
Treat DynamicLibrary library list as alternatives

Instead of attempting to load all libraries provided, we should only
attempt to load one of them and stop when the first one succeeds.

Affects WSI tests in DRM envs.

Specifically affects:
dEQP-VK.api.device_drm_properties.drm_files_exist

Components: Framework, Vulkan
VK-GL-CTS issue: 4171
VK-GL-CTS public issue: 303

Change-Id: Ib86d25662ce0b783b37ebacb26a6944452d22fd2

22 months agoEnsure that some clear commands ignore conditionals.
Amber [Fri, 16 Dec 2022 08:48:37 +0000 (09:48 +0100)]
Ensure that some clear commands ignore conditionals.

New tests:
dEQP-VK.conditional_rendering.conditional_ignore.*

Components: Vulkan
VK-GL-CTS issue: 3714

Change-Id: I0acef833ad08e961732d4567a6ee7128c857e35f

22 months agoAdd tests for a renderpass with LOAD_OP_CLEAR and STORE_OP_STORE
Amber [Mon, 12 Dec 2022 09:30:01 +0000 (10:30 +0100)]
Add tests for a renderpass with LOAD_OP_CLEAR and STORE_OP_STORE

VK-GL-CTS issue: 3734

Components: Vulkan

New tests:
dEQP-VK.renderpass.no_draws.render_pass_no_draw_clear_load_store
dEQP-VK.renderpass2.no_draws.render_pass2_no_draw_clear_load_store

Change-Id: Ic2567598ce13eaed9eec2788b6ec8e05101b3e5f

22 months agoTest device entry-points from instance extensions
Piotr Byszewski [Tue, 13 Dec 2022 15:24:31 +0000 (16:24 +0100)]
Test device entry-points from instance extensions

This change searches for all device-level entry-points
from instance extensions and saves them to new
vkEntryPointValidation.inl file.
It also ads a test case that uses data from this file
to verify that vkGetDeviceProcAddr returns
non-NULL for found functions.

VK-GL-CTS issue: 3940

Components: Vulkan

Affects:
dEQP-VK.info.instance_extension_device_functions

Change-Id: I07deb5402d4bf47de5556bca9e69d7e549527692

22 months agoFix state query tests for desktop GL context
Tapani Pälli [Tue, 13 Dec 2022 15:44:32 +0000 (17:44 +0200)]
Fix state query tests for desktop GL context

Affects:
dEQP-GL45-ES3.functional.state_query.integers.generate_mipmap_hint*
dEQP-GL45-ES3.functional.state_query.integers.viewport*
dEQP-GL45-ES3.functional.state_query.texture.texture*
dEQP-GL45-ES3.functional.state_query.rbo.renderbuffer_internal_format
dEQP-GL45-ES3.functional.state_query.shader.vertex_attrib*

Components: OpenGL
VK-GL-CTS issue: 3761

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

22 months agoSupport GL 4.5 in the 'negative' tests
Mykola Piatykop [Wed, 3 Aug 2022 11:01:04 +0000 (14:01 +0300)]
Support GL 4.5 in the 'negative' tests

This patch is port of 512fa1c1bc1930a1966df7caefb3c199ac02a919

Components: OpenGL
Public PR: 343
VK-GL-CTS Issue: 3761

Affects:
dEQP-GL45-ES3.functional.negative_api.*
dEQP-GLES3.functional.negative_api.*

Signed-off-by: Mykola Piatykop <mykola.piatykop@globallogic.com>
Change-Id: Ia542efae198fab6986d57502e25c49a01152653c

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main
Piotr Byszewski [Mon, 9 Jan 2023 09:34:02 +0000 (10:34 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main

Change-Id: I1e73bed5ac5b17674402a1f177c6535906fab210

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4
Piotr Byszewski [Mon, 9 Jan 2023 08:17:58 +0000 (09:17 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/vulkan-cts-1.3.4

Change-Id: If8b58ba0befe6c8e2beb9a1867656da231a6cf87

22 months agoRequire sampleRateShading in multisample linear interpolation tests
Ricardo Garcia [Fri, 9 Dec 2022 11:57:38 +0000 (12:57 +0100)]
Require sampleRateShading in multisample linear interpolation tests

While these tests normally set sampleShadingEnable to VK_FALSE, their
shaders enable the SampleRateShading capability, which means
sampleRateShading is required to run them.

Affects:
dEQP-VK.draw.*.linear_interpolation.*

VK-GL-CTS issue: 4167
Components: Vulkan

Change-Id: I52f9f81b13186d2b152f46ecadbc73455ffbf063

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Piotr Byszewski [Sat, 7 Jan 2023 15:03:55 +0000 (16:03 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I467e6a22adfe0bd549a37378b9eee8220859d0e0

22 months agoMake depth_bias_triangle_list_point write to PointSize
Amber [Tue, 3 Jan 2023 13:58:15 +0000 (14:58 +0100)]
Make depth_bias_triangle_list_point write to PointSize

VK-GL-CTS Issue: 4197
Components: Vulkan

Affect tests:
dEQP-VK.draw.renderpass.depth_bias.depth_bias_triangle_list_point

Change-Id: I21c223ff1e986c48fc90f97d21d472cfa713abdf

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Piotr Byszewski [Sat, 7 Jan 2023 13:27:45 +0000 (14:27 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I1ed2965c43158b0131f340237dbebfcf5b2aaf5f

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Piotr Byszewski [Sat, 7 Jan 2023 12:15:11 +0000 (13:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Ie8e4ee5b77cbea1aa87664a38a074f2381d2ea15

22 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Piotr Byszewski [Sat, 7 Jan 2023 11:05:29 +0000 (12:05 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I7507fe1cee9b7bccdbfc4883f0ee6937c116b30a

22 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Piotr Byszewski [Thu, 5 Jan 2023 18:12:20 +0000 (19:12 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Iea24c631e95fad0dbf694e67f141c243fda3a3d9

22 months agoFix 2d image views in fragment shading rate tests
ziga-lunarg [Sat, 19 Nov 2022 22:46:51 +0000 (23:46 +0100)]
Fix 2d image views in fragment shading rate tests

If viewType is VK_IMAGE_VIEW_TYPE_2D then subresourceRange.layerCount
must be 1

Components: Vulkan

VK-GL-CTS issue: 4124

Affected tests:
dEQP-VK.fragment_shading_rate.*

Change-Id: I32db55ce0785a2d91c391625bfed312d5e7371f0

22 months agoVideo tests plan for VK_KHR_video_queue
Marcin Zając [Thu, 31 Mar 2022 12:50:57 +0000 (14:50 +0200)]
Video tests plan for VK_KHR_video_queue

Test coverage for vulkan video

Add tests:
 * dEQP-VK.video.capabilities.*
 * dEQP-VK.video.decode.h264*
 * dEQP-VK.video.decode.h265*
 * dEQP-VK.video.synchronization.*
 * dEQP-VK.video.synchronization2.*

Affect tests:
 * dEQP-VK.*

Components: Framework, Vulkan

VK-GL-CTS issue: 2847

Change-Id: Ie15b46132b8260771074f011f33fed59357b7a5b

22 months agoAdd tests for interpolateAtSample with GPL and null MSAA state.
Amber [Thu, 24 Nov 2022 15:22:54 +0000 (16:22 +0100)]
Add tests for interpolateAtSample with GPL and null MSAA state.

New tests:
dEQP-VK.pipeline.fast_linked_library.misc.interpolate_at_sample_no_sample_shading

Components: Vulkan
VK-GL-CTS issue: #3976

Change-Id: Ic3a3508f6555a8f45e82fdf56ab192720fcfdd49

22 months agoAdd tests for dynamic patch control points and multiple pipelines.
Amber [Wed, 16 Nov 2022 08:47:03 +0000 (09:47 +0100)]
Add tests for dynamic patch control points and multiple pipelines.

These tests make sure that drawing while dynamic patch control points
are used along with multiple pipelines with differing tesselation shader
parameters works as expected.

VK-GL-CTS issue: 4028

Components: Vulkan

New tests:
dEQP-VK.pipeline.*.dynamic_control_points.change_output
dEQP-VK.pipeline.*.dynamic_control_points.change_output_winding
dEQP-VK.pipeline.*.dynamic_control_points.change_winding

Change-Id: Id3c4342708eb4f8bbe2f2a519da1ffbb1cd8dd1c

22 months agoSet each dyanmic state to proper stage on a pipeline with
Hyunjun Ko [Mon, 12 Dec 2022 01:50:38 +0000 (10:50 +0900)]
Set each dyanmic state to proper stage on a pipeline with
graphics pipleline library enabled.

Affects:
dEQP-VK.pipeline.pipeline_library.extended_dynamic_state.*
dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.*

VK-GL-CTS Issue: 3853

Components: Vulkan

Change-Id: Ie875d699ed475de9e60dae7abe88106ea1e3e2cd

22 months agoSkip implicit PrimitiveID checks on devices without geometry shader support
Charlie Turner [Wed, 7 Dec 2022 01:22:50 +0000 (01:22 +0000)]
Skip implicit PrimitiveID checks on devices without geometry shader support

Since the fragment shader unconditionally uses gl_PrimitiveID, these
tests must be run on a device with geometry shader support, since a
variable decorated with PrimitiveId in SPIR-V requires one of of the
Geometry or Tessellation features according to the SPIR-V spec.

Reported by Alexis Hetu.

Affects:
dEQP-VK.pipeline.fast_linked_library.misc.implicit_primitive_id
dEQP-VK.pipeline.monolithic.misc.implicit_primitive_id
dEQP-VK.pipeline.pipeline_library.misc.implicit_primitive_id

VK-GL-CTS issue: 3932
Components: Vulkan

Change-Id: Ic9df03d6c4d4f509d8ef93ed0ec7080d99248c68

22 months agoFix atomic tests' texture size
Aitor Camacho [Tue, 8 Nov 2022 19:01:27 +0000 (20:01 +0100)]
Fix atomic tests' texture size

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

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

Components: OpenGL, OpenGL ES

VK-GL-CTS issue: 2876

Change-Id: If3d7e233480f65877ceb981057fd9d620c563e58

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

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

VK-GL-CTS Issue: 4141

Components: Vulkan

Change-Id: Iffbdc66b353d2192d1f15c1370a0ef114cc84c4c

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

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

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

Change-Id: Ic89cbf59e0f9bc00c0a94fb303f3c2051332365f

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

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

No test results should be affected by this change.

Components: Vulkan
VK-GL-CTS issue: 4178

Change-Id: I970b2c82760fd54be91bfe9549baa8ebc57bb0f9

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

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

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

Components: Vulkan
VK-GL-CTS issue: 4154

Change-Id: If34eeb119c0dc8404dbca14271119fc09461fe16

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

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

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

Components: Vulkan

Change-Id: I0bc396382fe6cab16e2b23fb3c2961cc4f7ae97b

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

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

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

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

This covers an issue fixed by,

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

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

Components: Vulkan

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

VK-GL-CTS issue: 3721

Change-Id: I5990d2a4903f0b4091cfc6f5dc61ec52699c7bae

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

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

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

Components: Vulkan
VK-GL-CTS issue: 4007

Change-Id: I3453fb48a422e135fc394ffc7d4ad006f1739a1f

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

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

Tests run locally:

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

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

Wildcard without dot

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

Wildcard with dot

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

Wildcard at start and end

 --deqp-case=*peer_memory*

Components: Framework

VK-GL-CTS issue: 4149

Change-Id: I91348b3e0824014897393b6ee07864a4b786186f

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

Components: Vulkan

VK-GL-CTS issue: 4168

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

Change-Id: I14f612e461093c777bdede50b3d665fa7914ea13