Matthew Netsch [Fri, 21 Jan 2022 21:36:09 +0000 (16:36 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Iab61e615b3f7d5b108d925150255a73171e3d438
Matthew Netsch [Fri, 21 Jan 2022 17:33:04 +0000 (12:33 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: If56557dcb21ca8bfd90acbb2fffbd3f8ceed16f2
Mika Väinölä [Tue, 11 Jan 2022 07:45:02 +0000 (09:45 +0200)]
Re-enable Clang warning for Amber
The Amber version used by vulkan-cts-1.2.5 and later includes 4d0115c
which should fix all suggest-destructor-override warnings.
Components: Framework, Vulkan
VK-GL-CTS issue: 3361
Change-Id: I36437c797c067521e1444d20cfece33babfe435a
Mika Väinölä [Thu, 13 Jan 2022 08:00:09 +0000 (10:00 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
VK-GL-CTS issue: 2842
Change-Id: I21e37ce38db08c7c7041f4628ac852588a788852
Matthew Netsch [Thu, 20 Jan 2022 21:10:44 +0000 (21:10 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I790e54266657e91c84b9e40f6eb7385914d569c6
Ilkka Saarelainen [Wed, 17 Feb 2021 11:33:22 +0000 (13:33 +0200)]
Decrease required subgroup size
dEQP-VK.spirv_assembly.instruction.spirv1p4.entrypoint.comp_workgroup_entry_point
test assumed that the subgroupSize is >= 8. The test failed if the
supported subgroupSize is less than 8.
This CL lowers the required subgroup size to 4.
Affects:
dEQP-VK.spirv_assembly.instruction.spirv1p4.entrypoint.comp_workgroup_entry_point
Components: Vulkan
VK-GL-CTS issue: 2698
Change-Id: I9931dab7a57c0b6b73530e72bca0c0d9cc90f87d
(cherry picked from commit
8f9b9137470ed5b0cd0b38edd9e9c28ccf565731)
Jari Komppa [Tue, 11 Jan 2022 14:58:31 +0000 (16:58 +0200)]
Fix for potentially uninitialized variables
This change adds a constructor for a struct which sets the members that
do not have a constructor of their own to known values.
This potentially affects anything that uses the reference rasterizer,
but should not change any test results.
Affects:
*
Components: Framework
VK-GL-CTS issue: 3434
Change-Id: Ie874b4baa4d2ff5a8aa66f9ea2c3cd11b37edb64
Matthew Netsch [Thu, 20 Jan 2022 17:01:38 +0000 (17:01 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I3080cbdc60602f0faea714502bbc5461cac257e0
Mika Väinölä [Fri, 17 Dec 2021 07:10:19 +0000 (09:10 +0200)]
Fix NULL/False to std::string conversion errors
Newer versions of GCC reject std::string(DE_NULL). Previously this
didn't cause any errors or warnings when compiling, but should produce
an error at runtime. This change replaces invalid values with empty
string literals and adds deFatalStr for cases that potentially
relied on the string constructor throwing an exception.
Components: Framework, OpenGL, Vulkan
VK-GL-CTS issue: 3419
Change-Id: I68ec7d1447d1e96f5d7841e0684687cdd294fe39
Sean Risser [Fri, 30 Apr 2021 17:02:57 +0000 (13:02 -0400)]
Require geometry shaders for adjacency topologies
Clipping tests would use adjacency topologies with drivers that didn't
support geometry shaders.
Components: Vulkan
Affects: dEQP-VK.clipping.clip_volume.depth_clip.*
VK-GL-CTS Issue: 2906
Change-Id: I7a41e62dcbcdcab46ce4f8b04bfe322c688fbcac
Slawomir Cygan [Fri, 10 Dec 2021 10:34:37 +0000 (11:34 +0100)]
Fix getting capture address in RT capture replay tests
Use vkGetBufferOpaqueCaptureAddress to retreive address
used in opaqueCaptureAddress
Components: Vulkan
VK-GL-CTS Issue: 3420
Affects: dEQP-VK.ray_tracing_pipeline.capture_replay.shader_binding_tables
Change-Id: Ifaa2fe92d6517fa75a29ad21c06365efd7857de4
Sławomir Cygan [Mon, 10 Jan 2022 15:16:38 +0000 (16:16 +0100)]
Remove time measurement on deferred host build tests
The time measurement is wrongly implemented in this test
- it measures also thread creation, allocations and VK setup time, additionally
to AS build. It is not easily fixable.
Moreover, the spec says that offloading the work to background threads
is 'desirable', however it never says it is faster.
VK-GL-CTS Issue: 3435
Components: vulkan
Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.*
dEQP-VK.ray_query.acceleration_structures.*
Change-Id: I41d836e2e454b9fb9bb46109edddd4eda19370e9
Matthew Netsch [Fri, 14 Jan 2022 17:36:58 +0000 (17:36 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I1d7510b4e0626392ff35aa1f38c1bd193b8ce319
Arkadiusz Sarwa [Tue, 7 Dec 2021 17:22:32 +0000 (18:22 +0100)]
Remove api.tooling_info.validate_instance_layers
Remove:
dEQP-VK.api.tooling_info.validate_instance_layers
Components: Vulkan
VK-GL-CTS issue: 3395
This reverts commit
7628909f404f665eb54c6a5019386747fb631134.
Change-Id: I68de938e73c10fed80d4e9bb3698b513a1b44315
Matthew Netsch [Fri, 14 Jan 2022 06:54:19 +0000 (06:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: Ic336acbf09ed630cc1b20ea82796f20369b1a5dc
Matthew Netsch [Fri, 14 Jan 2022 05:19:30 +0000 (05:19 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I7ec0667baf95d997230a8befced3ca4f2cda4876
Mohankumar Nekkarakalaya [Wed, 12 Jan 2022 21:23:25 +0000 (13:23 -0800)]
Fix sType Tooling Info tests
Tooling Info tests were not setting the sType correctly. This goes
against spec
where "sType must be
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT". These
tests also check this sType to validate functionality.
Components: Vulkan
Affects:
dEQP-VK.api.tooling_info.*
VK-GL-CTS issue: 3444
Change-Id: Ic72104261a577d7d767742d4b2828296eba3922c
Paul Thomson [Fri, 3 Dec 2021 16:48:36 +0000 (16:48 +0000)]
DeqpTestRunner: fix deqpLogFilename
Fix capitalization of shell argument "deqpLogFilename" in
DeqpTestRunner.java. The code still worked fine in most cases because
the default filename matches the filename passed in DeqpTestRunner.java.
Components: Android
Google bug: b/
206657494
Change-Id: I857fa3994ada72aa96d199569704a46034255309
(cherry picked from commit
42017ff7072dcc7e7a7d51dd5611be05abf5460f)
Mikolaj Chadzynski [Thu, 23 Dec 2021 08:38:54 +0000 (09:38 +0100)]
Add format check to SharedPresentableImageTest
The SharedPresentableImageTest does not follow Vulkan spec.
The SurfaceFormats got by getPhysicalDeviceSurfaceFormats ->
getPhysicalDeviceSurfaceFormatsKHR should be checked by
vkGetPhysicalDeviceImageFormatProperties. This is according to:
www.khronos.org/registry/vulkan/specs/1.2-extensions/html/chap33.html
"33.5. Surface Queries
In addition to the surface capabilities as obtained by surface queries
below, swapchain images are also subject to ordinary image creation
limits as reported by vkGetPhysicalDeviceImageFormatProperties. As an
application is instructed by the appropriate Valid Usage sections, both
the surface capabilities and the image creation limits have to be
satisfied whenever swapchain images are created."
Unsupported format can lead to non-deterministic behavior e.g.
a segmentation fault, a null pointer dereference in a test or a driver.
VK-GL-CTS issue: 3422
Affects:
dEQP-VK.wsi.android.shared_presentable_image.*
Components: Vulkan
Change-Id: Id4bb4d1c81e090ed1d7f34a76f3cfafc464d8cf8
Matthew Netsch [Thu, 13 Jan 2022 21:38:03 +0000 (16:38 -0500)]
Fix inl files
Change-Id: I6468dff8d75e73dbd23a0a1b1b1314ea80ef954b
Components: Vulkan, Framework
Piotr Byszewski [Mon, 13 Dec 2021 14:08:09 +0000 (15:08 +0100)]
Checked .inl files back into the repo
By default .inl files won't be generated at build time but
this functionality is still present and to activate it
value of DEQP_VULKAN_INL_GEN_OUTPUTS_DIR should be changed
to point to PROJECT_BINARY_DIR.
VK-GL-CTS issue: 3197
Components: Framework, Vulkan
Affects:
dEQP-VK.*
Change-Id: I6ba5932aa51740048c8dcc0c0222e8f7553ac4b3
Piotr Byszewski [Fri, 10 Dec 2021 12:32:27 +0000 (13:32 +0100)]
Pass force to fetch_sources
Switching vulkan-docs folders between gitlab and github branches
results in errors on the server (clobbering the tags). Using
fetch sources with --force param resolves the issue.
Components: Vulkan
VK-GL-CTS issue: 3197
Change-Id: I913d5803836e9f7a59494e5ebf6e6261ede52948
Ricardo Garcia [Thu, 11 Nov 2021 17:18:38 +0000 (18:18 +0100)]
Fix strided device address regions in RT misc tests
Some strided device address regions in ray tracing misc tests were being
created with the wrong size, not taking into account some tests were
storing several shader group handles in the binding tables.
In addition, this commit also fixes several validation errors in these
tests, related to bad sizes when flusing allocations and unaligned
strides in strided device address regions, which needed to be rounded
up.
Affected tests:
dEQP-VK.ray_tracing_pipeline.misc.*
Components: Vulkan
VK-GL-CTS issue: 3280
Change-Id: I7d20c347ff44b455547115d1a6b94c5d69a46c2c
Ricardo Garcia [Tue, 9 Nov 2021 16:26:37 +0000 (17:26 +0100)]
Fix ray tracing closedFan2 tests
The watertightness tests for ray tracing include a closedFan2 variant
that had several issues.
These tests create a circle made of a variable number of triangles, all
of them sharing a central vertex and all of them sharing two edges with
neighboring triangles.
With that composition, closedFan2 variants created one geometry, BLAS
and instance per triangle, and tried to verify certain rules regarding
closed fans and watertightness. This had several problems:
- By having each triangle belong to a different instance, the set up
does not meet the requirements for watertight geometry as laid out in
the spec.
- Ray tracing shaders were increasing atomic counters, indexing them per
ray and primitive id, in the any-hit shader. If a counter was
increased more than once, this was considered a failure. However, in
the closedFan2 variants all triangles have primitive id zero due to
all of them belonging to different geometries. If a ray was found to
hit two geometries/BLAS, it would result in a failure because the same
counter would be increased twice, but that result is legal according
to the spec.
This commit fixes closedFan2 tests by addressing both issues:
- The tests now create one geometry per triangle, but groups all
geometries in a single BLAS and instance, meeting the spec
requirements regarding closed fans.
- When increasing atomic counters, they are indexed per ray and per
geometry index, so it is illegal to hit the same geometry twice with
the same ray, following the rules of
VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR, but they allow
the same ray to hit two triangles (geometries) as the spec allows.
In addition, it also removes some dead code and fixes angle calculation
so they fall in the [-pi, pi] range.
Affected tests:
dEQP-VK.ray_tracing_pipeline.watertightness.*
Components: Vulkan
VK-GL-CTS issue: 3150
Change-Id: I430be3a1830592d37b75031b8506a194c862a0d7
Jörg Wagner [Mon, 6 Dec 2021 08:57:51 +0000 (09:57 +0100)]
Reduce framebuffer size of dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
Reduce the size to 32x16 to avoid avoid timeouts on low-end platforms.
This shouldn't affect the ability to find compiler bugs because the
shader itself is the same.
Affects: dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store
Components: Vulkan
VK-GL-CTS Issue: 3411
Change-Id: If4fac83d04723ab16e987a2f7d1495bf1a8f055f
Ilkka Saarelainen [Fri, 17 Dec 2021 05:36:16 +0000 (07:36 +0200)]
Fix validation errors in renderpass tests
This CL fixes the validation errors in some of the renderpass
tests. The tests incorrectly defined subpass dependency access
scopes for depth/stencil attachments in some cases.
Affects:
dEQP-VK.renderpass*.attachment_allocation.*
Components: Vulkan
VK-GL-CTS Issue: 3385
Change-Id: Ia9cc78bd28dde5b9cdbf4e28ba759e3bde44a9d0
Matthew Netsch [Fri, 7 Jan 2022 17:55:19 +0000 (12:55 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts-1.2.7
Change-Id: I05420f73334f6aee2729ea2e8f76a079de896617
Piotr Byszewski [Wed, 8 Dec 2021 16:07:35 +0000 (17:07 +0100)]
Update kc-cts version
Version of kc-cts was updated to include fix for inl dependency.
Components: OpenGL
VK-GL-CTS issue: 3400
Change-Id: Ic28275604849506de4139c0bbda20278a2431ca1
Mohankumar Nekkarakalaya [Tue, 9 Nov 2021 17:56:08 +0000 (09:56 -0800)]
Create command pool with command buffer reset in RT tests
-When command pool was created either command buffer reset
bit should have been set or command buffer should have
reset pool before using for VU.
-Fix is to create command pool with reset bit set.
Components: Vulkan
VK-GL-CTS Issue: 3288
Affected tests: dEQP-VK.ray_tracing_pipeline.acceleration_structures.device_compability_khr.*
Change-Id: Ie21926cd53c505e46da0d03a6082e689d45d5d2a
Mika Väinölä [Tue, 30 Nov 2021 11:13:52 +0000 (13:13 +0200)]
Suppress GCC 11 conversion warning
On GCC 11 with UBSan enabled deHalfIsIEEENaN produces warnings due to
right shift promoting the result of an expression to an int, which is
then assigned to a deUint16.
Components: Framework
VK-GL-CTS issue: 3371
Change-Id: I48526b61ead69ee14b3253fa29737499253e62bc
Arkadiusz Sarwa [Wed, 17 Nov 2021 15:43:24 +0000 (16:43 +0100)]
Fix allocation of system memory.
Allocation of system memory which have been used as reference data can fail.
VK-GL-CTS issue: 3319
Components: Vulkan
Affects:
dEQP-VK.reconvergence.*
Change-Id: Icf9e6a2ad15912109aee2b6ea693a17650579087
Piotr Byszewski [Wed, 13 Oct 2021 12:17:14 +0000 (14:17 +0200)]
Generate inl files at build time
Inl files are no longer checked into the repo instead they are
generation at build time.
VK-GL-CTS issue: 3197
Components: Framework, Vulkan
Affects:
dEQP-VK.*
Change-Id: I526ed3d8dc8cc54860e44937a5048e499248a3c6
Piotr Byszewski [Tue, 19 Oct 2021 09:19:58 +0000 (11:19 +0200)]
Add Vulkan-Docs to fetch sources
Header files that are used to generate inl files are no longer
checked into the repo. Headers are now generated in Vulkan-Docs
which are now fetched from the gitlab. Generation is done
by gen_framework.py.
VK-GL-CTS issue: 3197
Components: Framework, Vulkan
Affects:
dEQP-VK.*
Change-Id: I4291848910b03180d4dc5514f8d8e5943c36e9b2
Paul Thomson [Mon, 20 Dec 2021 12:39:21 +0000 (12:39 +0000)]
Mirror ANGLE Khronos waiver for Android
Components: Android
VK-GL-CTS issue: 3255
Excluded:
dEQP-GLES3.functional.transform_feedback.array_element.*
dEQP-GLES3.functional.transform_feedback.random.*
dEQP-GLES31.functional.program_interface_query.transform_feedback_varying.*_array_element
dEQP-GLES31.functional.program_interface_query.transform_feedback_varying.type.*.array.*
Change-Id: I670c1e71d60dced06229520bca6244e87fa4ea1a
James Fitzpatrick [Wed, 8 Dec 2021 12:17:29 +0000 (12:17 +0000)]
Fix requirements tests for multiplane images
The memory requirements tests for multiplane images would previously
assume that bits were not sparsely set in memoryTypeBits.
This could lead to the tests assuming that an implementation was
returning a lazily allocated memory type for an image without
transient attachment set.
Affects: dEQP-VK.memory.requirements.*multiplane_image*
Components: Vulkan
VK-GL-CTS issue: 3405
Change-Id: Ic1e56d7412ac413da907059c79b3f7064b3c664b
Jörg Wagner [Mon, 6 Dec 2021 08:57:51 +0000 (09:57 +0100)]
Reduce framebuffer size of spv-stable-pillars-O-op-select-to-op-phi
Reduce the size to 32x16 to avoid avoid timeouts on low-end platforms.
This shouldn't affect the ability to find compiler bugs because the
shader itself is the same.
Affects: dEQP-VK.graphicsfuzz.spv-stable-pillars-O-op-select-to-op-phi
Components: Vulkan
VK-GL-CTS Issue: 3367
Change-Id: I2eacbc75df29b8dc44c8744bc13e140d6ef7c0cb
Matthew Netsch [Fri, 7 Jan 2022 16:02:38 +0000 (11:02 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I8e4fb16c3f82b6cc42af849e201d50ad2f053d6e
Ricardo Garcia [Thu, 9 Dec 2021 14:23:57 +0000 (15:23 +0100)]
Additional warning fix for Clang 13
Fixes warning about unused variable. No test results should be affected
by this change.
Components: Vulkan
VK-GL-CTS issue: 3147
Change-Id: Ib7c0425891e33e65e22ed90668aa3d0d7eae85df
Ricardo Garcia [Tue, 14 Dec 2021 10:08:16 +0000 (11:08 +0100)]
Fix mismatched ray payload in descriptor set random tests
Miss shaders had a ray payload declaration that didn't match other
shading stages.
Affected tests:
dEQP-VK.binding_model.descriptorset_random.*.miss.*
Components: Vulkan
VK-GL-CTS issue: 3412
Change-Id: I4473a883248bc9d572e6112da82bc4c774689071
s.fricke [Fri, 12 Nov 2021 21:54:10 +0000 (13:54 -0800)]
Add Samsung Driver ID
The enum value was added in the 1.2.199 Vulkan Headers
VK-GL-CTS issue: 3384
Components: Vulkan
Affects:
dEQP-VK.api.driver_properties.driver_id_match
Change-Id: Id04c20b5fe8ad90350a588fd0e7de0c498ebe5b6
Paul Thomson [Fri, 3 Dec 2021 17:53:24 +0000 (17:53 +0000)]
Update Android test lists for Broadcom waiver
VK-GL-CTS issue: 2804
Components: Vulkan, Android
Google bug: b/
206833783
Change-Id: I51fcc3ce1617dc5a980e893bfc5915e8fc789c74
Brandon Schade [Tue, 28 Sep 2021 19:28:20 +0000 (12:28 -0700)]
Remove few EGL robustness tests
Components: EGL
Affects:
dEQP-EGL.functional.robustness.reset_context.shaders.infinite_loop.*
VK-GL-CTS issue: 257
Change-Id: I9edb2e577fb14b98d83bb16dc31188d3a901606d
(cherry picked from commit
39c99a7ece4b6618cde30c6c621bd3036801bd4b)
Mohd Faisal [Mon, 22 Nov 2021 14:58:37 +0000 (14:58 +0000)]
Fix use a device with protected memory enabled
Test is trying to allocate memory from protected memory heap using
default device which doesn't have protected memory enabled. Change
checks if the protected memory supported, if it is create a custom
device with protected memory enabled.
Affects:
dEQP-VK.memory.mapping.*.full.variable.implicit_unmap
Components: Vulkan
VK-GL-CTS issue: 3292
Change-Id: I74897e3dd7f1cada0044036ba27ad8764754ed23
YiHsing Shen [Tue, 9 Nov 2021 02:03:40 +0000 (02:03 +0000)]
Throttling CTS producing frame speed
CTS checks the present time of the frame 6 frames ago. However, if
the default buffer count of BufferQueue is more than 7, CTS could
produce frames continuously in a short time. In this case, the frame
6 frames ago might be not presented yet then CTS fails. To prevent
this situation, CTS produces frames at the speed according to
compositeInterval.
Component: EGL
Affected tests:
dEQP-EGL.functional.get_frame_timestamps.*
Change-Id: I1ac15974a6c4147ee2546ad21dea1fb3e6bf38f9
Matthew Netsch [Fri, 7 Jan 2022 06:07:01 +0000 (01:07 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I85eab03afdf24359556917617b56856b51b7eb07
Matthew Netsch [Thu, 6 Jan 2022 22:45:47 +0000 (17:45 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Id711f3ba5558c490c3629051677c7f41ec2da2d6
Ricardo Garcia [Fri, 10 Dec 2021 13:54:01 +0000 (14:54 +0100)]
Fix warnings reported by clang 13
This commit fixes code that was producing warnings when built using
clang 13. They are mostly about unused variables and null pointer
substractions, but the new code should be semantically the same.
No test results should be affected by these changes.
Components: Framework, Vulkan, OpenGL
VK-GL-CTS issue: 3147
Change-Id: I0eb87c17270a610c8b29ec27ae8e10009053f8e1
Jari Komppa [Fri, 19 Nov 2021 13:16:54 +0000 (15:16 +0200)]
Rename various things for more inclusive language
This change renames various things to avoid gender-specific or degatory
terms.
Khronos inclusive language policy:
https://www.khronos.org/about/inclusive-language
Majority of the changes are due to the term 'dummy', as in mannequin or
placeholder, which in programming may mean any of empty, placeholder,
unused, minimal, busywork, ignored or irrelevant.
Changes not included are file names (gluDummyRenderContext), test names
(dummy_instruction_set) or branch names (master).
Affects:
*
Components: Framework, Vulkan, OpenGL
VK-GL-CTS issue: 2509
Change-Id: I3837477a1b3de1142e8d97c503890ccbce9138f8
Ari Suonpaa [Tue, 14 Dec 2021 05:27:53 +0000 (07:27 +0200)]
Remove vkDestroyBuffer
A buffer allocation test that is supposed to fail a large
allocation still tried to destroy the buffer even when an
error was returned from the allocation. This is now removed.
VK-GL-CTS Issue: 3192
Affects:
dEQP-VK.api.buffer.basic.size_max_uint64
Components: Vulkan
Change-Id: Ic36cb548ab2796b41e2a0b44d023e644b02a6d8c
Jari Komppa [Tue, 23 Nov 2021 10:53:00 +0000 (12:53 +0200)]
Avoid querying non-supported hardware features
Change the feature query test to avoid querying information on hardware
features that are not supported. This is done by querying non-existing
feature (max_enum) instead, which must be ignored by implementations.
The change also adds comment to all generated files stating what script
generates the files.
Affects:
dEQP-VK.api.info.get_physical_device_properties2.features
Components: Vulkan
VK-GL-CTS issue: 2853
Change-Id: I24a3832abc0721e649edbb112bd7f776c2b5d7f4
Mika Väinölä [Mon, 13 Dec 2021 11:00:05 +0000 (13:00 +0200)]
Disable two warnings for old Amber versions
Older versions of Amber fail to build with Clang >= 11 and GCC >=11 due
-Werror and warnings that have been fixed in later versions. Upgrading
Amber in older CTS branches risks accidental downgrades during fix
propagation. This change disables -Wsuggest-destructor-override for
Clang and -Wuninitialized for GCC when building libamber. These
should be re-enabled in newer Vulkan CTS releases.
Components: Framework, Vulkan
VK-GL-CTS issue: 3361
Change-Id: Ifc2ed69584d8ad179042b80212e02ceb9956d110
Mika Väinölä [Wed, 1 Dec 2021 10:24:52 +0000 (12:24 +0200)]
Zero initialize array in internal tests
This suppresses a -Wmaybe-uninitialized warning in GCC 11 release
builds.
Affects: dE-IT.delibs.decpp.block_buffer
Components: Framework
VK-GL-CTS issue: 3378
Change-Id: I2315b5cdeecb6e9a54dd419c88134f30a3335029
Matthew Netsch [Thu, 9 Dec 2021 17:41:52 +0000 (17:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I837a41fd83ac421e799900ff74df8b4daa549ecc
Jari Komppa [Wed, 8 Dec 2021 14:10:04 +0000 (16:10 +0200)]
Reduce complexity of some random cases
This change adds a complexity heuristics to some random cases and
reduces the final nested array size to avoid complexity explosion.
In practice only 18 test cases out of 1576 are affected.
Affects:
dEQP-VK.ubo.random.*
Components: Vulkan
VK-GL-CTS issue: 3389
Change-Id: If108ce2f04272b7bae9799daffa3682d1fb3aa52
Mika Väinölä [Wed, 10 Mar 2021 11:16:38 +0000 (13:16 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
VK-GL-CTS issue: 2842
Change-Id: I5bd290f9c312a30c2fcb223307c7b5c785a0fa92
(cherry picked from commit
c686fd7ddf13d9ec51c84aea044d36ef3dd69c68)
Matthew Netsch [Fri, 3 Dec 2021 16:51:10 +0000 (11:51 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I0adccdf3f29176238bd4ca92fe8c9aa380986f43
Tomasz Gregorek [Fri, 29 Oct 2021 08:01:54 +0000 (03:01 -0500)]
Relax protected heap allocation tests - continuation
Some implementations have limitations on protected heap
allocations, and these limitations cannot be queried
using the Vulkan API. This change allows an out-of-memory
to happen after a certain number of allocations to
compensate that.
Fix protected memory allocation to be done on small
allocation chunks and ignore allocation failures
if there is at least 80 of concurrent allocations
at a time.
VK-GL-CTS issue: 3257
Affects:
dEQP-VK.memory.allocation.random.*
Components: Vulkan
Change-Id: I32ed020195ff468de468bbd8527dec1d7f0db183
Ralph Potter [Tue, 9 Nov 2021 12:45:38 +0000 (12:45 +0000)]
Mirror existing ANGLE waiver for Samsung devices
Some Samsung devices utilize an extended ANGLE implementation, with
a Samsung vendor string.
Components: OpenGL ES
VK-GL-CTS issue: 3255
Change-Id: I6e49ae571ee38ea8dace36103f9d62055151b520
(cherry picked from commit
34d6d68ab3bd13117d936869fae70d16cc7c1297)
Mika Väinölä [Tue, 16 Nov 2021 12:11:34 +0000 (14:11 +0200)]
Zero initialize XFB counter buffer
Implementations that don't zero initialize buffers on allocation will
fail these tests when reading uninitialized counter buffers with
vkCmdBeginTransformFeedbackEXT.
Affects: dEQP-VK.rasterization.provoking_vertex.transform_feedback.*
Components: Vulkan
VK-GL-CTS issue: 3311
Change-Id: I3cd9a82aed94e55b5e37cbd287e159c2e5fc69d2
Matthew Netsch [Fri, 19 Nov 2021 20:11:48 +0000 (20:11 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I800d219e0b2d87e0a690bd535b00e377d7c13b5c
Tomasz Owczarek [Tue, 9 Nov 2021 16:53:02 +0000 (16:53 +0000)]
Disable depth clamp for graphics pipeline creation tests.
Not all GPUs does support depth clamp feature.
Disable depth clamp in pipeline creation tests as it's not used
by tests itself and isn't required to test pipeline creation.
Affects:
dEQP-VK.pipeline.creation_cache_control.graphics_pipelines.*
Components: Vulkan
VK-GL-CTS issue: 3297
Change-Id: I59ed04bfcd1e5fc4b79dae31e254ff48c3410a5b
Matthew Netsch [Fri, 19 Nov 2021 17:27:35 +0000 (17:27 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I2cbe3e52c8373027ab109a6dbaefa6a34f25dd05
Sławomir Cygan [Wed, 14 Apr 2021 16:12:12 +0000 (18:12 +0200)]
Fix 'implicit-fallthrough' build error on GCC 9.3.0
It seems the existing comment was not hitting the regular
expression used by the GCC compiler when reading user comments
before case switch fallthrough.
The warning is triggered by -Wextra, which on GCC enables
'-Wimplicit-fallthrough=3'.
Another way to avoid the warning would be to use
[[fallthrough]] statement, but it's from C++17, which does not seem
to be enabled.
Components: Vulkan
Change-Id: Ica52e88f94f4f1c303511d8462938856cb676146
(cherry picked from commit
3cbdbc5564b6684d4737c61d4bcfccd516e14ce7)
Matthew Netsch [Thu, 18 Nov 2021 21:52:19 +0000 (16:52 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I888aaa5fc93ef69f75c6f3a31ab2a02202028cbd
Matthew Netsch [Thu, 18 Nov 2021 19:56:13 +0000 (19:56 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I627fd4331d6dcf4f56a90b8a348dd1294e911e64
Mika Väinölä [Wed, 10 Mar 2021 11:16:38 +0000 (13:16 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
Some dynamic casts and calls to AndroidHardwareBufferExternalApi::
getInstance() produced nonnull warnings. Suppress these by
wrapping them in if statements.
This commit also removes implicit-fallthrough from the list of ignored
GCC warnings in check_build_sanity.py. All such warnings in the CTS
should be fixed by now and recent versions of Clang also support
this warning.
VK-GL-CTS issue: 2842
Change-Id: I5bd290f9c312a30c2fcb223307c7b5c785a0fa92
Matthew Netsch [Fri, 12 Nov 2021 21:40:26 +0000 (21:40 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I933b783b229d5d0545f1fc58ac01f5302625f81d
Piotr Byszewski [Wed, 3 Nov 2021 15:30:14 +0000 (16:30 +0100)]
Portability: avoid triangle fans
When the test itself has nothing to do with triangle fans,
just uses them to perform rendering then use triangle strips
instead so that tests also work for portability.
Components: Vulkan
VK-GL-CTS issue: 3266
Affects:
dEQP-VK.pipeline.push_constant.graphics_pipeline.overwrite
dEQP-VK.pipeline.extended_dynamic_state.*
dEQP-VK.pipeline.bind_point.graphics_compute.write_write.*
Change-Id: Iefa4f70d626584e71fc4fd341cccc15023a40d2d
Lionel Landwerlin [Wed, 6 Oct 2021 14:45:53 +0000 (17:45 +0300)]
Prevent RT tests from going over VkPhysicalDeviceVulkan11Properties::maxMemoryAllocationSize
VK-GL-CTS issue: 3064
Component: Vulkan
Affects:
dEQP-VK.ray_tracing_pipeline.misc.max*
Change-Id: Ia42f5530206eeeb94fa634ad84a213c2db558946
Mika Väinölä [Thu, 21 Oct 2021 07:46:33 +0000 (10:46 +0300)]
Pause XFB during pipeline switch
The per pipeline provoking vertex tests call vkCmdBindPipeline while
transform feedback is active which is not allowed.
Affects:
dEQP-VK.rasterization.provoking_vertex.*
Components: Vulkan
VK-GL-CTS issue: 3207
Change-Id: I30edf010179ff9629fc90053f14d228d828551a2
Matthew Netsch [Fri, 5 Nov 2021 13:59:25 +0000 (09:59 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I81ba38a964a81a6266d2a6286cf60a42ed027885
Piotr Byszewski [Tue, 2 Nov 2021 11:13:32 +0000 (12:13 +0100)]
Portability: handle robustBufferAccess
When the VK_KHR_portability_subset extension is advertised,
robustBufferAccess is no longer a required feature.
Components: Vulkan
VK-GL-CTS issue: 3267
Affets:
dEQP-VK.robustness.*
Change-Id: I957da2a36c40662c99c0b01774a8bf03ef3f3890
Matthew Netsch [Thu, 4 Nov 2021 20:45:41 +0000 (16:45 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I53d429b0dfc4a62a33949748ef4ce0a804f71814
Matthew Netsch [Thu, 4 Nov 2021 20:45:39 +0000 (16:45 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I1c61bd275a7161d071ad79aa493c6634582391a2
Matthew Netsch [Thu, 4 Nov 2021 20:45:32 +0000 (16:45 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ice8e3ca5f949d6c134f91a7d5317ab5892d5147d
Matthew Netsch [Mon, 1 Nov 2021 14:56:44 +0000 (10:56 -0400)]
Allow Vulkan CTS 1.2.7.2
Affects: dEQP-VK.api.driver_properties.properties
Components: Vulkan
Change-Id: I6075a82eab8f347ef5b9523a10d6e6621163bfbc
Paul Thomson [Mon, 25 Oct 2021 18:41:00 +0000 (19:41 +0100)]
Update SPIRV-Headers
The SPIRV-Headers version for vulkan-cts-1.2.6 was ahead of 1.2.7. This
change brings SPIRV-Headers in 1.2.7 up to the same version.
Components: Vulkan
Change-Id: Ifff93c5251183d3a6ee3ef3f508e88274332116f
Matthew Netsch [Fri, 29 Oct 2021 14:41:15 +0000 (10:41 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I7535fbad6813c7a6dfec1324a2656329de792ebe
Mohankumar Nekkarakalaya [Tue, 12 Oct 2021 18:58:22 +0000 (11:58 -0700)]
Remove 64-bit int usage in dynamic_indexing test shaders
- "OpCapability Int64" is not a mandatory extension
- Replace with v2i32
Components: Vulkan
VK-GL-CTS Issue: 3205
Affected tests:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.dynamic_indexing.dynamic_indexing
dEQP-VK.ray_query.acceleration_structures.dynamic_indexing.dynamic_indexing
Change-Id: I04b7cf6309b42ef4572e5c79c8e9233aee2edec7
Matthew Netsch [Fri, 29 Oct 2021 13:52:23 +0000 (09:52 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I8a9f12e6adc0daf962a4f6f05d28216db4880ee8
Ricardo Garcia [Thu, 14 Oct 2021 11:27:46 +0000 (13:27 +0200)]
Check shaderInt64 in workgroup memory explicit layout alias tests
A few workgroup memory explicit layout alias tests were not checking
shaderInt64 while using 64-bit integers in shaders.
Affected tests:
dEQP-VK.compute.workgroup_memory_explicit_layout.alias.*u64*array*
dEQP-VK.compute.workgroup_memory_explicit_layout.alias.*array*u64*
Components: Vulkan
VK-GL-CTS issue: 3131
Change-Id: I1911018c471e9548603d5de987625163bb356eb9
Mohankumar Nekkarakalaya [Thu, 21 Oct 2021 00:14:08 +0000 (17:14 -0700)]
Allow NaN result when result exceeds limit
Based on spec if the result is too large to be represented
in the floating point the result is undefined.
Issue was found with ldexp. Since fix is applicable in general
updated the isFinite() to take maxValue and checks the interval value
with the allowed max value in the context (and similarly for
negative numbers). If the result is beyond the 32-bit
floating-point representation expected result is unbounded
Components: Vulkan, OpenGL, Framework
VK-GL-CTS Issue: 3138
Affected tests:
dEQP-VK.glsl.builtin.function.*
dEQP-VK.glsl.builtin.precision.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.*
dEQP-GLES31.functional.shaders.builtin_functions.common.fma.*
Change-Id: Iba27d6b0d7d0bc433a1d0c055cef6f6a61b239ba
Graeme Leese [Fri, 27 Aug 2021 12:46:19 +0000 (13:46 +0100)]
Accept NaN as valid in atan2 precision tests
The Vulkan CTS has been updated
(https://gerrit.khronos.org/c/vk-gl-cts/+/7857) so that it is not
required to generate correct results for atan(inf, inf), and this makes
the corresponding change in GL. The GLSL spec is not as clear on what is
required here, but does say:
Built-in functions not listed above and not defined as equations of
the above have undefined precision. These include, for example, the
trigonometric functions
In general, I think that it is expected that the default state of Vulkan
is a match for GL.
Components: OpenGL
VK-GL-CTS issue: 3073
Affects: dEQP-GLES3.functional.shaders.builtin_functions.precision.atan2.highp_*
Change-Id: Ifae97a2e86962f5aff68d5eed09ba38069445468
Matthew Netsch [Thu, 28 Oct 2021 21:57:06 +0000 (17:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I54315f34095f396294bab85b0da4a1e3cf38aac8
Matthew Netsch [Thu, 28 Oct 2021 21:57:00 +0000 (17:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I2f2be91bd696c7de227f804202f9a8eb222cab03
Ricardo Garcia [Fri, 8 Oct 2021 07:50:00 +0000 (09:50 +0200)]
Fix VK_KHR_shader_clock feature checks
The shader clock tests were not checking if the implementation supported
64-bit integers for tests that required the feature and they were
checking supported features at test instance creation time instead of
the specific checkSupport method for test cases.
Affected tests:
dEQP-VK.glsl.shader_clock.*
Components: Vulkan
VK-GL-CTS issue: 3187
Change-Id: I0dc86a4fae619c0d27628d97f0ac11c5def5ff4f
Juha Heiskanen [Tue, 19 Oct 2021 11:38:09 +0000 (14:38 +0300)]
Fix dEQP-VK.tessellation.geometry_interaction.limits.output_required_max_geometry validation error
Adjust numSliceNodesComponentLimit in order to keep
m_numGeometryPrimitivesPerInvocation within minimum limits defined in
the spec.
Components: Vulkan
VK-GL-CTS Issue: 3180
Affects:
dEQP-VK.tessellation.geometry_interaction.limits.output_required_max_geometry
Change-Id: I72ca43bec27256cb75a11d75aab91b9b565be9ab
Jari Komppa [Tue, 5 Oct 2021 09:52:03 +0000 (12:52 +0300)]
Move log prints from test-ctor to test-inst-ctor
Some of the tesselation tests were printing values into the output log
from the test constructor, which meant that said prints end up in more
or less random place in the log. Moved those prints to the test instance
instead, so the information now resides within the test output.
The prints were also done in the amber-verify run mode.
Affects:
dEQP-VK.tessellation.geometry_interaction.scatter.*
dEQP-VK.tessellation.geometry_interaction.limits.*
Components: Vulkan
VK-GL-CTS issue: 3057
Change-Id: Ic5b2ce59369d1c20f25b8dc1c6cb594baac74f8f
Samuel Iglesias Gonsálvez [Fri, 1 Oct 2021 06:18:08 +0000 (08:18 +0200)]
Update drivers ids
From last version of Vulkan-Docs.
Components: Framework
VK-GL-CTS issue: 3173
Change-Id: I39aeb4f16d3bf19291a5a266595b215681ef2c83
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Matthew Netsch [Fri, 22 Oct 2021 18:23:39 +0000 (14:23 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I6f96b469518264e53fdd142f445187f8eb091c6d
Barry Ko [Wed, 27 Feb 2019 12:53:04 +0000 (20:53 +0800)]
Relax get_frame_timestamps
To prevent power side effect from legacy platform. We tend to relax the
deqp criteria from 3 vsyncs to 4 vsyncs. And verify timestamp 6 frames
ago.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
db1f80ba923b9e89177562203c21192f8e7340c3
https://android-review.googlesource.com/c/platform/external/deqp/+/918914
Submitted on behalf of a third-party: barry.ko@mediatek.com
Component: EGL
Affected tests:
dEQP-EGL.functional.get_frame_timestamps.*
BUG:
123203074
Change-Id: I214b410d2ab8f0d6d4b3f9d6752c1c1d756cc28f
Chris Forbes [Wed, 13 Feb 2019 22:59:20 +0000 (14:59 -0800)]
Make renderdoc build-time integration optional
In some environments (Android Q CTS), renderdoc headers will not be
available.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
7e79367bd8fa1430c0ea161a36f62d7b8edc6803
Components: Vulkan, Framework
Bug: b/
123431604
Change-Id: I7d4e36074e4f89a81f55dde83a217920653ad173
Matthew Netsch [Fri, 22 Oct 2021 17:07:14 +0000 (13:07 -0400)]
Merges vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I1cbb115f9efbb2df6de81b0b133723b15e367427
Matthew Netsch [Fri, 22 Oct 2021 17:01:32 +0000 (13:01 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I6873657c378b02b383da36905a31886806519459
Matthew Netsch [Fri, 22 Oct 2021 17:01:27 +0000 (13:01 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I67159d811b780fc975c41a18043c177bceba6da7
Mika Väinölä [Wed, 13 Oct 2021 07:51:57 +0000 (10:51 +0300)]
Fix zx_handle_t typedef
Change from signed to unsigned 32-bit integer to match zircon/types.h.
Components: Framework, Vulkan
VK-GL-CTS issue: 3214
Change-Id: Ic887e90adc1583cfcd1518e21831d330e0f89b17
Jason Ekstrand [Mon, 21 Jun 2021 20:35:36 +0000 (15:35 -0500)]
Fix tessellation SPIR-V tests use of Restrict
Their usage of Restrict violates the SPIR-V spec which requires that it
only got on variables, not types or struct members.
Affected tests:
dEQP-VK.tessellation.*
Components: Vulkan
VK-GL-CTS issue: 2975
Change-Id: Ifbde1b493bf56d1ee6454a4ab54e98bcd05f839b
Mohd Faisal [Wed, 26 Aug 2020 10:51:25 +0000 (11:51 +0100)]
Allowing spirv1.4 shaders compilation
Components: Vulkan
VK-GL-CTS Issue: 2560
Affects: dEQP-VK.spirv_assembly.instruction.spirv1p4.*
Change-Id: Icbfe3ad623da98968eee401d08df5ed6b3b2db1e
(cherry picked from commit
c96d524d079fdada26b3548effd1539174415be6)
Samuel Iglesias Gonsálvez [Fri, 8 Oct 2021 06:38:23 +0000 (08:38 +0200)]
Add check for shaderImageGatherExtended
There were validation errors in the tests when running them
through devsim layer and vulkan 1.0 spec minimum profile:
"VUID-RuntimeSpirv-OpImage-06376(ERROR / SPEC): msgNum:
70978435 -
Validation Error: [ VUID-RuntimeSpirv-OpImage-06376 ] Object 0: handle
= 0x66d3840, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x43b0b83 |
vkCreateShaderModule(): Shader uses OpImageGather with offset (-8)
less than VkPhysicalDeviceLimits::minTexelGatherOffset (0). The Vulkan
spec states: If an OpImage*Gather operation has an image operand of
Offset, ConstOffset, or ConstOffsets the offset value must be greater
than or equal to minTexelGatherOffset"
Components: Vulkan
VK-GL-CTS issue: 3186
Affects:
dEQP-VK.glsl.texture_gather.offset.*
Change-Id: I1c58d751a86dbe7a1a285a32daae19955b5b4582
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Mohd Faisal [Wed, 13 Oct 2021 14:09:01 +0000 (15:09 +0100)]
Fix missing self-subpass dependency
Self-subpass dependency required for read-after-write operation, in test
cases where the attachment is written using load-op-load at the start
of subpass and then the values are read inside the fragment shader.
Affects:
dEQP-
VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-
VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*
Components: Vulkan
VK-GL-CTS issue: 3216
Change-Id: I6c72b81dccfb7526ec4607b255ff4872b13c4d22