Tony Barbour [Tue, 17 Oct 2023 15:41:41 +0000 (09:41 -0600)]
tests: Add tests for GPU-AV shader selection
Tony Barbour [Tue, 17 Oct 2023 15:27:31 +0000 (09:27 -0600)]
tests: Pass pNext through VkShaderObj to CreateShaderModule
Tony Barbour [Thu, 12 Oct 2023 15:10:23 +0000 (09:10 -0600)]
gpu: Use vku utilities for GPU-AV settings
Tony Barbour [Fri, 6 Oct 2023 20:20:58 +0000 (14:20 -0600)]
gpu: Add ability to select which shaders get instrumented
John Zulauf [Thu, 12 Oct 2023 20:02:12 +0000 (14:02 -0600)]
layers: Dry and simplify small_vector
With some paths more efficient.
John Zulauf [Fri, 1 Sep 2023 19:35:17 +0000 (13:35 -0600)]
layers: Cache small_vector working store
Keep a current working store pointer updated, s.t. it doesn't have to be
computed per access. Also easier to debug.
John Zulauf [Fri, 1 Sep 2023 18:50:10 +0000 (12:50 -0600)]
tests: More small_vector test cases
ziga-lunarg [Thu, 12 Oct 2023 17:49:48 +0000 (19:49 +0200)]
tests: Test copying buffer to remaining image layers
ziga-lunarg [Thu, 12 Oct 2023 17:49:33 +0000 (19:49 +0200)]
layers: Fix getting buffer size from image
ziga-lunarg [Sat, 16 Sep 2023 10:07:04 +0000 (12:07 +0200)]
tests: Update shader object tests
ziga-lunarg [Sat, 16 Sep 2023 10:06:58 +0000 (12:06 +0200)]
layers: Update shader object VUIDs for the spec change
ziga-lunarg [Sun, 15 Oct 2023 17:20:08 +0000 (19:20 +0200)]
layers: Break pNext recursion into a while loop
spencer-lunarg [Mon, 16 Oct 2023 07:57:57 +0000 (16:57 +0900)]
layers: Fix and unify VK_REMAINING_ARRAY_LAYERS logic
spencer-lunarg [Fri, 13 Oct 2023 08:15:37 +0000 (17:15 +0900)]
bp: Use promoted alias function
spencer-lunarg [Mon, 16 Oct 2023 02:02:34 +0000 (11:02 +0900)]
layers: Fix VUID churn for 268
spencer-lunarg [Fri, 13 Oct 2023 10:09:21 +0000 (19:09 +0900)]
tests: Remove unused VkBufferTest class
Mike Schuchardt [Sun, 15 Oct 2023 18:44:19 +0000 (11:44 -0700)]
build: Update shader toolchain for SDK
spencer-lunarg [Fri, 13 Oct 2023 09:05:40 +0000 (18:05 +0900)]
tests: Remove version from RTX tests
Mike Schuchardt [Fri, 13 Oct 2023 17:57:59 +0000 (10:57 -0700)]
build: Update to header 1.3.268
- Update known-good
- Replace VUID-00378 with consolidated version VUID-05137
- Generate source
Juan Ramos [Sat, 14 Oct 2023 00:29:17 +0000 (18:29 -0600)]
mac: Use exported_symbols_list
Saves 1,398,896 bytes for the dylib in a Debug build
Similar to --version-script for Linux/Android
spencer-lunarg [Fri, 13 Oct 2023 08:43:38 +0000 (17:43 +0900)]
layers: Remove unused Pipeline state info
John Zulauf [Tue, 26 Sep 2023 19:43:32 +0000 (13:43 -0600)]
syncval: Use precomputed range gen for image view
Avoid the expensive constructors for image view descriptors (as
possible).
John Zulauf [Fri, 22 Sep 2023 18:49:12 +0000 (12:49 -0600)]
syncval: Cleanup UpdateMemoryAccess call tree
Simplify and make less fragile.
John Zulauf [Fri, 22 Sep 2023 18:47:26 +0000 (12:47 -0600)]
layers: Cache IsDepthSliced in view
It's constant over the life of the view, and it shows up in syncval
profiling on traces.
John Zulauf [Wed, 20 Sep 2023 23:36:19 +0000 (17:36 -0600)]
syncval: Optimize first access closing
Use boolean state to show first access is closed.
John Zulauf [Tue, 19 Sep 2023 20:38:16 +0000 (14:38 -0600)]
layers: Cache view validity in ImageDescriptor
Lower descriptor validity check overhead by caching and invalidating
image view validity check.
John Zulauf [Tue, 12 Sep 2023 21:49:11 +0000 (15:49 -0600)]
syncval: Make HazardResult optional for perf
Passing an optional return didn't benefit performance, but making the
payload of HazardResult optional did (1-10%)
Piers Daniell [Fri, 13 Oct 2023 06:54:48 +0000 (00:54 -0600)]
layers: Compatibility for VK_EXT_nested_command_buffers
spencer-lunarg [Thu, 12 Oct 2023 22:17:26 +0000 (07:17 +0900)]
tests: Add min/max core profile and test cleanup
spencer-lunarg [Thu, 12 Oct 2023 08:43:54 +0000 (17:43 +0900)]
layers: Add Location to all Log messages
Jeremy Gebben [Thu, 12 Oct 2023 21:35:23 +0000 (15:35 -0600)]
scripts: Update gpu_inst_shader_hash.h from generate_spirv.py
It is far less error prone to update the hash when recompiling
the instrumentation shader functions.
spencer-lunarg [Wed, 11 Oct 2023 08:16:04 +0000 (17:16 +0900)]
tests: Single line to skip for version or extension
ziga-lunarg [Wed, 11 Oct 2023 19:26:55 +0000 (21:26 +0200)]
tests: Add missing descriptors tests
Charles Giessen [Wed, 11 Oct 2023 23:38:22 +0000 (17:38 -0600)]
tests: Remove EXPECT() macro
This was just a fancy way to check for errors. It doesn't provide any
benefit over using gtest ASSERT_* and EXPECT_* macros directly.
Juan Ramos [Wed, 11 Oct 2023 18:23:10 +0000 (12:23 -0600)]
doc: Remove LAYER_CONFIGURATION.md
This document has been moved to the Vulkan-Utility-Libraries
since that repo is largely responsible for the logic described
in the file.
It doesn't make sense for this document to be here anymore.
closes #4667
Charles Giessen [Wed, 11 Oct 2023 21:39:08 +0000 (15:39 -0600)]
tests: Throw exception upon ASSERT_* failure
This change adds a 'listener' to the googletest framework so that whenever
a fatal assertion is made, an exception is thrown forcing the test to
stop executing at the point the assertion was made. This is important
to ensure that any failed assertions in nested function calls are caught.
Without the change, assertions deep within the test framework's init
code will not cause execution to halt, potentially causing hard crashes
which reduce debuggability.
The googletest framework sets up exception handlers so that the exception
thrown by the failed assertion doesn't escape up the callstack, causing
the process to abort.
Charles Giessen [Mon, 15 May 2023 21:04:34 +0000 (15:04 -0600)]
layers: Dont Skip on LogInfo
The LogInfo function now consistently does not cause skipping of
subsequent calls into the driver.
Charles Giessen [Wed, 11 Oct 2023 19:55:50 +0000 (13:55 -0600)]
test: Replace usage of ASSERT_VK_SUCCESS
Replaced with `ASSERT_EQ(VK_SUCCESS, ...);` and added the necessary logic
to allow gtest to pretty-print VkResult values.
This allows every place where VkResult is compared to inside of a gtest
macro to get pretty-printing, instead of just ASSERT_VK_SUCCESS.
Jeremy Gebben [Wed, 11 Oct 2023 16:54:00 +0000 (10:54 -0600)]
tests: Fix PositiveGpuAssistedLayer.GpuValidationUnInitImage
This new test used IsPlatform() which was just removed but
I didn't rebase enough times to catch it.
ziga-lunarg [Wed, 11 Oct 2023 11:41:03 +0000 (13:41 +0200)]
tests: Test sync2 access mask in best practice
ziga-lunarg [Wed, 11 Oct 2023 11:40:40 +0000 (13:40 +0200)]
layers: Add sync2 access masks to layout validation
Jeremy Gebben [Tue, 10 Oct 2023 16:56:47 +0000 (10:56 -0600)]
gpu: Don't crash on handles that may be VK_HANDLE_NULL
Jeremy Gebben [Fri, 6 Oct 2023 16:11:18 +0000 (10:11 -0600)]
gpu: Fix descriptor update corner cases
Possible fixes for problems in commit
901b102f2
spencer-lunarg [Tue, 10 Oct 2023 01:34:37 +0000 (10:34 +0900)]
tests: Remove IsPlatform for android devices
spencer-lunarg [Fri, 6 Oct 2023 03:20:14 +0000 (12:20 +0900)]
layers: Fix pColorBlend dynamic rendering
Juan Ramos [Tue, 10 Oct 2023 16:48:50 +0000 (10:48 -0600)]
tests: Update gtest to v1.14.0
Artem Kharytoniuk [Fri, 6 Oct 2023 10:28:06 +0000 (12:28 +0200)]
tests: Test SHADER_READ access with AS build stage
Artem Kharytoniuk [Fri, 6 Oct 2023 10:26:30 +0000 (12:26 +0200)]
layers: Support SHADER_READ access in AS build stage
The solution is implemented using SHADER_STORAGE_READ access, assuming
it's the only component of SHADER_READ that can be used to access
geometry buffers (the core of validation logic works with expanded
stages).
SHADER_READ access is handled correctly, validation logic automatically
includes SHADER_READ when a SHADER_READ's sub-component is used.
ziga-lunarg [Sun, 8 Oct 2023 22:17:01 +0000 (00:17 +0200)]
tests: Test required subgroup size in task shader
ziga-lunarg [Sun, 8 Oct 2023 22:16:45 +0000 (00:16 +0200)]
layers: Validate required subgroup size in mesh shaders
spencer-lunarg [Fri, 6 Oct 2023 23:27:59 +0000 (08:27 +0900)]
tests: Add support to mock AHB
Juan Ramos [Mon, 9 Oct 2023 17:55:35 +0000 (11:55 -0600)]
ci: Run vvl scripts in seperate action
It can be very confusing when these scripts fail at the end of a
long run. Especially for open source contributors.
ziga-lunarg [Fri, 6 Oct 2023 11:10:22 +0000 (13:10 +0200)]
tests: Test non optimal resolve format
ziga-lunarg [Fri, 6 Oct 2023 11:10:02 +0000 (13:10 +0200)]
layers: Add performance warning for non optimal resolve formats
spencer-lunarg [Sun, 8 Oct 2023 07:24:41 +0000 (16:24 +0900)]
tests: Cleanup CommandBuffer binding class
ziga-lunarg [Fri, 6 Oct 2023 22:24:50 +0000 (00:24 +0200)]
tests: Test invalid pipeline rendering formats
ziga-lunarg [Fri, 6 Oct 2023 22:24:34 +0000 (00:24 +0200)]
layers: Validate pipeline rendering info formats
ziga-lunarg [Sat, 7 Oct 2023 18:45:17 +0000 (20:45 +0200)]
tests: Test missing color blend feature
ziga-lunarg [Sat, 7 Oct 2023 18:45:09 +0000 (20:45 +0200)]
layers: Validate color blend format features
ziga-lunarg [Sat, 7 Oct 2023 20:59:01 +0000 (22:59 +0200)]
tests: Test attachment feedback loop
ziga-lunarg [Sat, 7 Oct 2023 20:58:51 +0000 (22:58 +0200)]
layers: Update VUID 09003 for feedback loop
ziga-lunarg [Sat, 7 Oct 2023 19:30:38 +0000 (21:30 +0200)]
tests: Test vkCmdCopyAccelerationStructureNV
ziga-lunarg [Sat, 7 Oct 2023 19:30:13 +0000 (21:30 +0200)]
layers: Add missing copy AS validation
ziga-lunarg [Sat, 7 Oct 2023 14:55:47 +0000 (16:55 +0200)]
tests: Add descriptor indexing missing features tests
ziga-lunarg [Sat, 7 Oct 2023 13:52:00 +0000 (15:52 +0200)]
tests: Test push descriptors
ziga-lunarg [Sat, 7 Oct 2023 13:51:47 +0000 (15:51 +0200)]
layers: Remove push descriptor assert
ziga-lunarg [Fri, 6 Oct 2023 19:03:34 +0000 (21:03 +0200)]
tests: Validate warning in best practice tests
Mike Schuchardt [Fri, 6 Oct 2023 19:19:35 +0000 (12:19 -0700)]
build: Update to header 1.3.267
- Update known-good
- Generate source
- Temporarily disable NegativeCommand.ExecuteCommandsToSecondaryCB until
it can be fixed
ziga-lunarg [Fri, 6 Oct 2023 16:42:41 +0000 (18:42 +0200)]
tests: Test best practice image memory barrier
ziga-lunarg [Fri, 6 Oct 2023 16:41:59 +0000 (18:41 +0200)]
layers: Add missing bp access layout combination
spencer-lunarg [Thu, 5 Oct 2023 18:09:16 +0000 (03:09 +0900)]
tests: Fix more blacklist tests on Android
spencer-lunarg [Fri, 6 Oct 2023 04:14:54 +0000 (13:14 +0900)]
layers: Improve ValidateMemoryTypes error message
ziga-lunarg [Tue, 3 Oct 2023 22:14:06 +0000 (00:14 +0200)]
tests: Test write descriptor image layout
ziga-lunarg [Tue, 3 Oct 2023 22:02:23 +0000 (00:02 +0200)]
tests: Test creating pipeline with missing features
ziga-lunarg [Tue, 3 Oct 2023 21:54:09 +0000 (23:54 +0200)]
tests: Test color write attachment count
ziga-lunarg [Tue, 3 Oct 2023 21:42:42 +0000 (23:42 +0200)]
tests: Test enabling robustBufferAccess2
ziga-lunarg [Tue, 3 Oct 2023 21:33:20 +0000 (23:33 +0200)]
tests: Test invalid memory priority
ziga-lunarg [Tue, 3 Oct 2023 21:19:16 +0000 (23:19 +0200)]
tests: Test resolving color image to depth image
ziga-lunarg [Tue, 3 Oct 2023 21:11:19 +0000 (23:11 +0200)]
tests: Test missing image plane info
ziga-lunarg [Tue, 3 Oct 2023 21:03:31 +0000 (23:03 +0200)]
tests: Test blitting color to depth
spencer-lunarg [Wed, 4 Oct 2023 14:39:50 +0000 (23:39 +0900)]
layers: Remove PRIxLEAST64 for sizes
Spencer Fricke [Fri, 6 Oct 2023 01:16:16 +0000 (10:16 +0900)]
buid: Add gpu_inst_shader_hash.h to BUILD.gn
closes https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/6635
arno-lunarg [Wed, 27 Sep 2023 16:24:13 +0000 (18:24 +0200)]
layers: Add 01096 02730 02731
arno-lunarg [Wed, 27 Sep 2023 13:18:52 +0000 (15:18 +0200)]
tests: Move external handle functions
ziga-lunarg [Wed, 4 Oct 2023 13:01:45 +0000 (15:01 +0200)]
tests: Test storage buffer offset alignment
ziga-lunarg [Wed, 4 Oct 2023 11:53:52 +0000 (13:53 +0200)]
tests: Test clearing ds attachment with invalid aspect
ziga-lunarg [Wed, 4 Oct 2023 10:46:52 +0000 (12:46 +0200)]
tests: Test color image clear with missing feature
ziga-lunarg [Wed, 4 Oct 2023 09:48:30 +0000 (11:48 +0200)]
tests: Test clearing ds image with color aspect
ziga-lunarg [Wed, 4 Oct 2023 09:43:10 +0000 (11:43 +0200)]
tests: Write descriptor set with invalid image info
ziga-lunarg [Wed, 4 Oct 2023 09:39:50 +0000 (11:39 +0200)]
tests: Test device only events with host commands
spencer-lunarg [Thu, 5 Oct 2023 19:32:17 +0000 (04:32 +0900)]
tests: Fix InitFromASMTry logic
Tony Barbour [Thu, 5 Oct 2023 17:53:25 +0000 (11:53 -0600)]
scripts: Explicitly exclude shaders from verification
Also allows verification of gpu_inst_shader_hash.h
Alina Kalyakina [Thu, 31 Aug 2023 13:58:55 +0000 (13:58 +0000)]
layers: Add thread safety checks for vkQueuePresentKHR
Add manual Pre- and Post- calls for thread safety checks. Regenerated
files.
spencer-lunarg [Thu, 5 Oct 2023 14:24:43 +0000 (23:24 +0900)]
layers: Fix vkGetPhysicalDeviceSurfaceCapabilities2KHR
Jeremy Gebben [Mon, 2 Oct 2023 15:24:40 +0000 (09:24 -0600)]
build: Update SPIRV-Tools
Commit
847715d6c65200987c079fb13ca7925760faec23 fixes a crash bug
that would happen if nothing was changed by the instrumentation passes.
This caused the address mode to not match what is used in
inst_functions.comp, and linking would fail.
Jeremy Gebben [Thu, 14 Sep 2023 17:57:48 +0000 (11:57 -0600)]
gpu: Add detection of destroyed descriptor resources
Add a bit array tracking which descriptor resources are valid
so that it can be checked by the GPUAV instrumentation if
a descriptor is used by a shader.
Jeremy Gebben [Thu, 28 Sep 2023 20:15:38 +0000 (14:15 -0600)]
layers: Fix default constructor warnings
The latest android NDK toolchain complains about using a mix of
default and explicit constructors.
ziga-lunarg [Wed, 4 Oct 2023 22:38:32 +0000 (00:38 +0200)]
layers: Improve best practice barrier message
ziga-lunarg [Wed, 4 Oct 2023 16:09:07 +0000 (18:09 +0200)]
tests: Fix incompatible descriptor set test
Artem Kharytoniuk [Tue, 19 Sep 2023 21:56:19 +0000 (23:56 +0200)]
layers: Fix swapchain parent handling in thread safety
This reverts
https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/2316
oldSwapchain can't originate from a different device (internal link):
https://gitlab.khronos.org/vulkan/vulkan/-/issues/3622