John Zulauf [Sun, 12 Nov 2017 02:13:43 +0000 (19:13 -0700)]
tests: Added PipelineMultiSample VUID tests
Added tests for validation checks:
VUID-VkPipelineMultisampleStateCreateInfo-sampleShadingEnable-00784
(VALIDATION_ERROR_10000620)
VUID-VkPipelineMultisampleStateCreateInfo-minSampleShading-00786
(VALIDATION_ERROR_10000624)
Change-Id: I49fcfc8f55275f27a976ea88619674c3b87285ae
John Zulauf [Mon, 6 Nov 2017 18:15:53 +0000 (11:15 -0700)]
layers: Added PipelineMultiSample VUID checks
Added validation checks for:
VUID-VkPipelineMultisampleStateCreateInfo-sampleShadingEnable-00784
(VALIDATION_ERROR_10000620)
If the sample rate shading feature is not enabled,
sampleShadingEnable must be VK_FALSE
VUID-VkPipelineMultisampleStateCreateInfo-minSampleShading-00786
(VALIDATION_ERROR_10000624)
minSampleShading must be in the range [0,1]
Change-Id: I21cdaf99f8970df4f2e03026a4dae00746ad8386
Cort Stratton [Tue, 28 Nov 2017 00:43:23 +0000 (16:43 -0800)]
tests: validation_cache review feedback
Cort Stratton [Tue, 28 Nov 2017 00:43:14 +0000 (16:43 -0800)]
layers: validation_cache review feedback
Cort Stratton [Thu, 23 Nov 2017 01:24:36 +0000 (17:24 -0800)]
tests: Add test for vkMergeValidationCachesEXT()
Cort Stratton [Thu, 23 Nov 2017 01:23:16 +0000 (17:23 -0800)]
layers: Check EXT_validation_cache's sole non-trivial VU
A cache can't be merged with itself.
Chris Forbes [Thu, 23 Nov 2017 00:54:46 +0000 (16:54 -0800)]
layers: Tidy up shader cache, reserve space before merging
Cort Stratton [Thu, 23 Nov 2017 00:19:21 +0000 (16:19 -0800)]
inlined commitIdLen into assert
Cort Stratton [Thu, 23 Nov 2017 00:05:49 +0000 (16:05 -0800)]
Convert SPIRV-Tools commit ID to binary before use as a UUID
This doubles the number of effective hash bits from 64 to 128.
Cort Stratton [Thu, 23 Nov 2017 00:04:23 +0000 (16:04 -0800)]
Fix build errors:
- No more SPIRV-Tools revision file. Instead, the
revision-parsing script just runs "git rev-parse HEAD"
in the spirv-tools repository to extract the commit ID.
- Invoke the revision-parsing script from the .sh Android scripts,
in addition to the .bat scripts.
Cort Stratton [Wed, 22 Nov 2017 21:06:57 +0000 (13:06 -0800)]
Fix for Android build error with Linux host
Cort Stratton [Tue, 7 Nov 2017 03:13:53 +0000 (19:13 -0800)]
Use SPIRV-Tools commit ID as validation cache version
Cort Stratton [Wed, 1 Nov 2017 20:46:21 +0000 (13:46 -0700)]
shader module codeSize is already in bytes
Chris Forbes [Mon, 30 Oct 2017 23:08:19 +0000 (16:08 -0700)]
layers: Add layer metadata for EXT_validation_cache extension
Chris Forbes [Mon, 24 Jul 2017 22:35:29 +0000 (15:35 -0700)]
layers: Add VK_EXT_validation_cache implementation for shaders
Chris Forbes [Mon, 24 Jul 2017 22:39:07 +0000 (15:39 -0700)]
layers: Add xxhash
Petr Kraus [Tue, 28 Nov 2017 02:22:41 +0000 (03:22 +0100)]
Add missing include in android_util.cpp
Cort Stratton [Tue, 28 Nov 2017 21:11:37 +0000 (13:11 -0800)]
tests: Fix UncompressedToCompressedImageCopy
Created images were implicitly using TILING_LINEAR,
despite testing for TILING_OPTIMAL support.
Fixes failure on Vega mentioned in #2153
Cort Stratton [Tue, 28 Nov 2017 20:11:05 +0000 (12:11 -0800)]
loader: fix memory leak for layers with >1 dev_exts
Petr Kraus [Thu, 23 Nov 2017 14:47:38 +0000 (15:47 +0100)]
layers: Fix typos in viewport state validation msgs
Petr Kraus [Fri, 24 Nov 2017 03:08:20 +0000 (04:08 +0100)]
tests: Implement lineWIdth state checks
Petr Kraus [Fri, 24 Nov 2017 02:09:03 +0000 (03:09 +0100)]
layers: Fix lineWidth checks
- migrate to parameter_validatio
- do not check against limit (outside limits is valid; impl clamps
value)
Petr Kraus [Fri, 24 Nov 2017 02:05:50 +0000 (03:05 +0100)]
layers: Quick fix odd create PSO param checks
- param check did only check the first create info
- `cullMode` check should be redundant to the automated part
Mark Lobodzinski [Mon, 27 Nov 2017 19:00:45 +0000 (12:00 -0700)]
header: Update to version 1.0.66 of the Vulkan hdr
- update vulkan.h
- update Lin/Win json file versions
- update vk.xml
- update vuid_mapping.py
- update vk_validation_error_messages.h
- update vk_validation_error_database.txt
- update vulkan.hpp
- fixed error in vk.xml, unofficially
Change-Id: Ia719bc069cb776c5b174f41667d591b43aaaf4d7
Tobin Ehlis [Fri, 10 Nov 2017 17:23:48 +0000 (10:23 -0700)]
tests:Fix MSVS build warnings
Jamie Madill [Wed, 8 Nov 2017 21:25:22 +0000 (16:25 -0500)]
layers: Fix MSVS conversion warning.
This fixes the following:
warning C4245: 'argument': conversion from 'int' to 'unsigned int', signed/unsigned mismatch
It also modifies the build to enable this warning by default.
Change-Id: If2e6c8d43811162a9a382883b3d55a148975fc37
Jamie Madill [Wed, 8 Nov 2017 19:48:32 +0000 (14:48 -0500)]
loader: Fix improper cast warning.
warning C4057: 'function': 'LPBYTE' differs in indirection to slightly different base types
This was popping up in some Windows builds. Also add it to the list
of warnings enabled by default with MSVS.
Change-Id: I2703f2e57ba3fb33ec03fbc7b8324c75187abec6
Cort Stratton [Thu, 23 Nov 2017 01:21:56 +0000 (17:21 -0800)]
tests: Fix indentation in ImageBarrierWithBadRange
Mark Lobodzinski [Tue, 21 Nov 2017 18:00:25 +0000 (11:00 -0700)]
build: Fix gslang->glslang errors in BUILD.md
Change-Id: I221fde5b016cf36ec1047287dbfb82a1a81e0b09
Mark Lobodzinski [Fri, 17 Nov 2017 18:20:02 +0000 (11:20 -0700)]
build: Updated BUILD.md for spirv-tools changes
Change-Id: Ic2f62a226474dbe5705be2706efc093b3dde7b9e
Mark Lobodzinski [Fri, 17 Nov 2017 18:14:52 +0000 (11:14 -0700)]
build: Removed unused spirv-tools/headers rev files
Change-Id: Ie199e1b2b94a7bc8c2ea998a7725d307e9a369f8
Mark Lobodzinski [Thu, 16 Nov 2017 20:23:05 +0000 (13:23 -0700)]
build: Avoid redundant spirv-tools/hdrs builds
Changed update_external_sources scripts to use spirv-tools and
spirv-headers already present in the glslang repo instead of
fetching and building separate versions.
Change-Id: Iff9666f1939d814d0888b2da9b9e7450af697722
Mark Lobodzinski [Fri, 17 Nov 2017 18:13:21 +0000 (11:13 -0700)]
scripts: Update toolchain revision check script
No longer need to check spirv-tools or spirv-headers as they are now
part of glslang.
Change-Id: Ib3594d064d33a94d6443426e02a617c96b243893
Mark Lobodzinski [Thu, 9 Nov 2017 23:45:44 +0000 (16:45 -0700)]
tests: Added GetQueryPoolResults test case
And updated the error database.
Change-Id: Id293ee836866ce9bbfc3a4eda4ee0e8efd0e09ab
Mark Lobodzinski [Thu, 9 Nov 2017 23:43:06 +0000 (16:43 -0700)]
layers: Add GetQueryPoolResults validation check
Added check for a pool of queryType TIMESTAMP having the RESULT PARTIAL
bit set and updated the error database.
Change-Id: I139733202c085a7d64d7359f659714b75a46ebf1
Mark Lobodzinski [Mon, 13 Nov 2017 20:52:05 +0000 (13:52 -0700)]
layers: Remove invalid query avaibility error check
This case in GetQueryPoolResults flagged errors for cases that are
valid.
Change-Id: I00a823992d200cd30988fde39ef679ea8ad8bce3
Mark Lobodzinski [Mon, 13 Nov 2017 20:42:20 +0000 (13:42 -0700)]
layers: Refactor PreCallValidateGetQueryPoolResults
Cleared up logic flow.
Change-Id: I32157a408a7ff7e413ab82b05bf86de48f98495b
Mark Lobodzinski [Mon, 13 Nov 2017 19:00:12 +0000 (12:00 -0700)]
layers: Remove redundant query_state_pair checks
Change-Id: I62b722124c58d98da642cc2c5c17670a7f290d64
Norbert Garnys [Fri, 17 Nov 2017 10:38:21 +0000 (11:38 +0100)]
tests: Add test case for vkCmdBlitImage() image layouts
Norbert Garnys [Thu, 16 Nov 2017 09:58:04 +0000 (10:58 +0100)]
layers: add image layout validation to vkCmdBlitImage()
Tobin Ehlis [Fri, 17 Nov 2017 18:30:19 +0000 (11:30 -0700)]
tests:Fix DynViewportAndScissorMismatch crash
This test was crashing on Nvidia drivers.
The crash seems to be a driver bug as the workaround is to not destroy
a descriptor set layout prior to creating gfx pipelines whose
pipeline_layout object was created from the given descriptor set layout
Tobin Ehlis [Fri, 17 Nov 2017 17:44:53 +0000 (10:44 -0700)]
tests:Fix signed/unsigned compare warning
Tobin Ehlis [Fri, 17 Nov 2017 16:59:37 +0000 (09:59 -0700)]
tests:Fix testname typo
Petr Kraus [Thu, 16 Nov 2017 20:21:58 +0000 (21:21 +0100)]
layers: Rewrite ViewportState checks and tests
- deal with #1685
- report correct object type
- improve? msg texts a bit
- add extension structs to pNext check
- use correct printf token where possible
- make tests to match changes + improve coverage (nullptr +
multiViewport)
- remove viewport state (and other stuff) from tests that do not use it
- merge some tests together that are too related
- remove unnecessary dynamic state from PSOLineWidthInvalid)
- correct invalid VkViewport in some places
- correct missing/null pViewport and pScissors in some places
- update and correct the VUID database
Tobin Ehlis [Wed, 15 Nov 2017 23:17:47 +0000 (16:17 -0700)]
tests:Add DevSim testing for 7 profiles
Update Travis-CI run LVL tests on seven different device profiles.
Tobin Ehlis [Wed, 15 Nov 2017 23:10:39 +0000 (16:10 -0700)]
layers:Add pre-built DevSim layer
Checking-in DevSim binary for linux to use in Travis-CI testing along
with seven initial json profiles to be tested w/ DevSim on top of mock.
Tobin Ehlis [Wed, 15 Nov 2017 22:36:20 +0000 (15:36 -0700)]
tests:Force 64bit format support for vtx buffer
For CreatePipeline64BitAttributesPositive test enable the DeviceProfile
layer in order to make sure that vtx buffer support is available for
VK_FORMAT_R64G64B64A64_SFLOAT.
Tobin Ehlis [Wed, 15 Nov 2017 20:38:18 +0000 (13:38 -0700)]
tests:Fix ParameterLayerFeatures2Capture
Fix ParameterLayerFeatures2Capture so that it only requests to create
queues from families that have a queueCount greater than 0.
Tobin Ehlis [Wed, 15 Nov 2017 18:26:26 +0000 (11:26 -0700)]
tests:Fix memory allocation sizes
Update QueryAndCopySecondaryCommandBuffers and
QueryAndCopyMultipleCommandBuffers tests to allocate buffer with size
based on the returned size requirements instead of hard-coded value.
Tobin Ehlis [Wed, 15 Nov 2017 16:43:56 +0000 (09:43 -0700)]
tests:Add "--devsim" option
Add "--devsim" option to vk_layer_validation_tests. This will enable
the Device Simulation layer as the bottom layer on the stack.
It still requires the caller to set the VK_DEVSIM_FILENAME env var in
order to select the json profile that they want to test with.
When "--devsim" option is specified, the device_profile layer will not
be enabled by default when InitFramework() is called. Instead, any
tests that require the device_profile layer can call
EnableDeviceProfileLayer(). This function will cause the device profile
layer to replace the dev sim layer as the bottome layer on the stack.
Tobin Ehlis [Tue, 14 Nov 2017 20:05:22 +0000 (13:05 -0700)]
icd:Increase WHOLE_SIZE mapped memory
Bump hard-coded mapped memory allocation size for WHOLE_SIZE from 4k to
64k. One validation test (InvalidMemoryMapping) was mapping 64k of
memory that was leading to segF as the 4k buffer was overwritten when
shadowed.
Tobin Ehlis [Tue, 14 Nov 2017 19:10:11 +0000 (12:10 -0700)]
tests:Only init queue families that have queues
It's possible for a device to return queue families that don't have
any queues, but we should not be requesting creation of queues from
such a family when we create the device as it's against the spec and
leads to a parameter validation error..
This change only requests that a device initiate queue families that
have at least one queue.
Tobin Ehlis [Tue, 14 Nov 2017 17:02:46 +0000 (10:02 -0700)]
tests:Get supported memory type when allocating
Before allocating memory for a buffer make sure that the requested
memory index type will support the required memory properties.
Tobin Ehlis [Tue, 14 Nov 2017 16:52:17 +0000 (09:52 -0700)]
icd:Expand mock icd memory type bit support
Image/buffer memory requirement memoryTypeBits are still just hard-
coded in mock icd, but expand to support more bits for more simulated
memory types. This helps the mock work in conjunction with the devsim
layer so that if a simulated device has more than 5 memory types, the
mock icd won't cause an error.
Tobin Ehlis [Mon, 13 Nov 2017 23:47:46 +0000 (16:47 -0700)]
tests:Detect buffer creation errors
Handle case when VkBufferTest fails to create the buffer. This means
setting the buffer as no longer valid, and checking for this case
in the test body so we don't try to use an invalid buffer.
Mike Schuchardt [Thu, 16 Nov 2017 20:15:20 +0000 (13:15 -0700)]
tests: Make ExternalMemory test more robust
- Use dedicated allocation when required by the external memory implementation
- Add required pNext structs for all buffers and memory
- Relax the requirement that external memory be host visible
- Verify that the export/import memory is actually linked
Change-Id: Ia12f8cc9846c781efcbac6f3d448f4254ad2daa0
Mark Lobodzinski [Mon, 13 Nov 2017 16:38:23 +0000 (09:38 -0700)]
layers: Validate device dispatchable objects
Device object validation required dereferencing possibly bad device
objects. Moved ownership of device objects to instance objects, and
to search each of the layer_data object lists for a created device
handle matching the our candidate device object.
Change-Id: If5615294c397ff6991d4d21ac75ab58d1b0b0841
Mark Lobodzinski [Tue, 14 Nov 2017 17:19:40 +0000 (10:19 -0700)]
scripts: Fix incorrect object type mappings
'Unknown' type was at the end of a couple of the lists, causing
incorrect IDs to be emitted.
Change-Id: I55cae6ecaff47977dca78e2f73468980f9450bda
Mark Lobodzinski [Mon, 13 Nov 2017 16:42:58 +0000 (09:42 -0700)]
layers: Move BuildTemplate call inside global lock
Helper routine was being called outside of the lock causing
freezes in Dota2
Change-Id: I45ab0b23c6ff3ed4ec16dca15107ce16f205599f
Tobin Ehlis [Wed, 8 Nov 2017 00:29:51 +0000 (17:29 -0700)]
tests:Add doc validation to travis CI
Lenny Komow [Fri, 10 Nov 2017 17:03:08 +0000 (10:03 -0700)]
loader: Fix pre-instance proc addresses
Fix a bug where vkGetInstanceProcAddr would return a null pointer for
any command that does not require an instance if an instance was
given
Change-Id: Iec5766f9c37104c36852f758d391a9b0b54ec0ec
Cody Northrop [Thu, 9 Nov 2017 22:04:03 +0000 (15:04 -0700)]
docs: Update some Android sections
Cody Northrop [Thu, 9 Nov 2017 21:26:51 +0000 (14:26 -0700)]
android: Only compile toolchain once build_all.sh
Jamie Madill [Wed, 8 Nov 2017 19:11:26 +0000 (14:11 -0500)]
layers: Don't confuse VkResult/VkBool32 in generators.
In some cases, the generator would return the special error for
validation failed for functions that return a VkBool32. Fix this, and
also some cases of initializing a VkBool32 with VkResult.
Change-Id: Icc071e647f293848d62a922d492ed41dfc5a4be1
Jamie Madill [Wed, 8 Nov 2017 18:40:09 +0000 (13:40 -0500)]
layers: Make generator helpers Python 2 compatible.
This is an easy compatiblity change, which uses a workaround to import
a version of 'open' that can support unicode across Python versions.
Affects the object tracker and parameter validation generators.
Change-Id: Ie958dc64168db9e06b36321b4b6ad2336f995ea3
Jamie Madill [Wed, 8 Nov 2017 18:50:14 +0000 (13:50 -0500)]
layers: Return an error when generator scripts fail.
Currently the scripts would abort with an error message, but not an OS
error code. Adding an error code allows build systems to correctly
detect the script failure as a failed build step.
Change-Id: I142a6215a3c02e6a880bfce0c3aba2c3c8fc4ff1
John Zulauf [Thu, 26 Oct 2017 21:34:49 +0000 (15:34 -0600)]
layers: Adds createSampler VUID/test for IMG_CUBIC
Added VUID check to parameter_validation_layer and matching test for
VUID
12600872 (must disable anisotropy for CUBIC_IMG filters)
Change-Id: I3d0f9449413637292c2726480ca7ce0e6b793e21
John Zulauf [Thu, 26 Oct 2017 19:51:15 +0000 (13:51 -0600)]
layers: VUIDs/test for vkCreateSampler anisotropy
Added VUID checks to parameter_validation_layer and matching tests for
three VUID's:
* VALIDATION_ERROR_12600868:
Must disable anisotropy when unnormalized coordinates are enabled.
* VALIDATION_ERROR_1260085e:
maxAnisotropy must be in range [1.0, maxSamplerAnisotropy]
* VALIDATION_ERROR_1260085c
anisotropyEnable must be VK_FALSE if samplerAnisotropy feature is
not enabled.
Removed test for: "samplerAnisotropy feature was not enabled ...
maxAnisotropy member ... must be 1.0" to conform with the resolution of
https://github.com/KhronosGroup/Vulkan-Docs/issues/503.
Change-Id: Ia1c561997adb9391ef463f6df90b424730366a7f
John Zulauf [Tue, 7 Nov 2017 22:25:38 +0000 (15:25 -0700)]
layers: Rename resetCB to ResetCommandBufferNode
Small cleanup change to clarify command buffer node code.
Change-Id: Ib98010e10161ef5b15aaa736d994ec48b4e659fb
John Zulauf [Fri, 3 Nov 2017 00:12:49 +0000 (18:12 -0600)]
layers: Free commandbuffer data when deleting pool
Fixes for https://vulkan.lunarg.com/issue/view/
59eeea8166315153977b0fe6
Issue #720 - Possible crash in layers when deleting command pools.
Ensured pool commandbuffers fully freed in the layer before deleting the
pool using refactored common code from FreeCommandBuffers.
Added postive test which exercises the implicit free path.
Change-Id: I71e1fcb6ffcd9a2977a89c0a8b388639e9a743cb
Mark Lobodzinski [Tue, 7 Nov 2017 16:00:48 +0000 (09:00 -0700)]
build: Update BUILD.md to specify VS2015
Change-Id: I9180304a8089db057af68cbf86b73118e1d29c16
Gabríel Arthúr Pétursson [Tue, 7 Nov 2017 00:06:00 +0000 (00:06 +0000)]
demos: Remove HTML in plain-text vulkaninfo output
Change-Id: I6f1192b71aa6f33664a6782dc81e1f8cb7cc5ba1
Mark Lobodzinski [Tue, 7 Nov 2017 15:53:54 +0000 (08:53 -0700)]
tests: Fix comment
Change-Id: If13c8393680baa96df4d24bf8d247ab9607f1b94
Tobin Ehlis [Mon, 6 Nov 2017 23:28:49 +0000 (16:28 -0700)]
tests:Add comment
Fix formatting of one line and add a comment related to an offset
calculation.
Tobin Ehlis [Mon, 6 Nov 2017 23:27:51 +0000 (16:27 -0700)]
icd:Update list of tests with unexpected errors
Only 2 tests remain with unexpected errors when running with default
mock ICD configuration. These same two tests also have unexpected
errors when running on actual HW.
Tobin Ehlis [Fri, 3 Nov 2017 21:21:53 +0000 (15:21 -0600)]
icd:Reduce offset alignment limits
Buffer min offset alignments were set to the max value. Reduce them to
16 to simplify testing of offsets that are a multiple of the min
alignment.
Tobin Ehlis [Fri, 3 Nov 2017 21:01:20 +0000 (15:01 -0600)]
tests:Update DSBufferInfoErrors
Allocate buffer memory based on requirements returned from device.
Tobin Ehlis [Fri, 3 Nov 2017 20:53:37 +0000 (14:53 -0600)]
tests:Cleanup DSUsageBitsErrors on early return
If we can't find a good format, make sure to cleanup all of the objects
allocated thus far in the DSUsageBitsErrors test.
Tobin Ehlis [Fri, 3 Nov 2017 20:52:11 +0000 (14:52 -0600)]
icd:Don't return support for Undefined Format
Tobin Ehlis [Fri, 3 Nov 2017 20:30:52 +0000 (14:30 -0600)]
tests:Update InvalidDynamicOffsetCases
Allocate buffer memory based on size requirements.
Tobin Ehlis [Fri, 3 Nov 2017 20:26:24 +0000 (14:26 -0600)]
tests:Fix unexpected error text
Update InvalidCmdBufferDescriptorSetImageSamplerDestroyed test to have
new unexpected error text based on "valid" being added to spec VU.
Tobin Ehlis [Fri, 3 Nov 2017 20:15:51 +0000 (14:15 -0600)]
tests:Fix InvalidCmdBufferDescriptorSetBufferDestroyed
Fix buffer allocation for InvalidCmdBufferDescriptorSetBufferDestroyed
to be based on memory requirements.
Tobin Ehlis [Fri, 3 Nov 2017 19:41:39 +0000 (13:41 -0600)]
tests:Fix InvalidCmdBufferBufferDestroyed
Size allocation for InvalidCmdBufferBufferDestroyed based on memory
requirements.
Cody Northrop [Mon, 6 Nov 2017 20:54:42 +0000 (13:54 -0700)]
android: Remove mips targets
Cody Northrop [Fri, 3 Nov 2017 22:09:24 +0000 (16:09 -0600)]
android: Update to shaderc known-good revisions
Cody Northrop [Tue, 31 Oct 2017 23:05:03 +0000 (17:05 -0600)]
build: Add optional ccache support to cmake
Cody Northrop [Tue, 31 Oct 2017 19:39:32 +0000 (13:39 -0600)]
travis: Use multiple cores for build
Cody Northrop [Fri, 13 Oct 2017 02:44:23 +0000 (20:44 -0600)]
travis: Switch to ccache, skip Android toolchain build
Cody Northrop [Fri, 13 Oct 2017 02:44:04 +0000 (20:44 -0600)]
scripts: Add --no-build for Android toolchain
With switch to importing shaderc, we don't need to
create prebuilts anymore.
saschawillems [Fri, 3 Nov 2017 14:27:27 +0000 (15:27 +0100)]
Replaced fixed path python 2.7 executable calls
John Zulauf [Thu, 26 Oct 2017 18:07:05 +0000 (12:07 -0600)]
layers: Refactored pNext chain walks to template
The while loops for the walking the pNext chains were implemented by
repeated code. These were refactored into a common template. Added
autogenerated 'traits' objects for the pNext linked structs.
Delete cut and paste duplicate pNext chain walk.
Change-Id: I46457bb5432219c74f9356e5230c70e4a9ef16df
Jean-François Marquis [Mon, 30 Oct 2017 22:14:15 +0000 (18:14 -0400)]
layers: Protect GetImage/BufferMemRqmts map access
Lock 'global_lock' while looking for IMAGE_STATE/BUFFER_STATE in
GetBufferMemoryRequirements/GetImageMemoryRequirements. This is needed
because other threads could add/remove other VkImage handles to/from
the maps concurrently. The specs say the VkImage must be externally
synchronized, but this doesn't cover the internals of the layers about
VkImages in general. vkCreateImage, vkDestroyImage and
vkBindImageMemory/vkBindBufferMemory correctly lock 'global_lock'.
Change-Id: I93cb00c9a7f99efc927da52e42103ab72516397e
Mike Schuchardt [Wed, 1 Nov 2017 22:16:22 +0000 (16:16 -0600)]
demos: Clarify cube --present_mode option
Change-Id: Ie53724c3612eb5bb9adfbb826149ef87916f0d84
Mike Stroyan [Thu, 2 Nov 2017 16:39:34 +0000 (10:39 -0600)]
icd: thread protect maps
Lock to protect threaded access to queue_map and mapped_memory_map.
Shannon McPherson [Wed, 20 Sep 2017 21:53:07 +0000 (15:53 -0600)]
demos: Add html backend and option to vulkaninfo
- Run clang-format on vulkaninfo.c
- Format Instance Extensions section
- Complete Layers info tree
- Convert spaces to tabs for html output
- Fix indentation of html output file
- Add Presentable Surfaces to html option
- Ammend Presentable Surfaces html output
- Extend platform compatibility
- Display VkPhysicalDeviceProps in html
- Convert DeviceLims and SparseProps to html
- Convert memoryType/flags to support html
- Complete AppGpuDumpMemProps html upgrade
- Complete format properties html upgrade
- Improve boolean logic for html_output var
- Change output filename to vulkaninfo.html
- Create auto-open format property flag info
- Update page title, further .html fixes
- WIN32 formatting and bug fixes
- Clang-format changes
- Close clang-format comments
- Update file format to code style standard
Change-Id: I49c7c6c62a54493fe622bd457f7c61e81806487e
Tobin Ehlis [Tue, 31 Oct 2017 14:50:48 +0000 (08:50 -0600)]
scripts:Cleanup comments and output for mock icd
Commented out a couple of debug output statements.
Killed a bunch of comments and code that were carried over from
original script but that are no longer relevant.
Chris Forbes [Mon, 30 Oct 2017 18:20:26 +0000 (11:20 -0700)]
quickly wire mock icd into travis
John Zulauf [Fri, 20 Oct 2017 23:43:04 +0000 (17:43 -0600)]
tests: Refactor duplicated SamplerCreateInfo code
There were numerous instance of nearly identical SamplerCreateInfo
initializations. Refactoring improves readability and code size.
Change-Id: I1c8d085e1a92b088da11b7088878ed2ab7d20428
John Zulauf [Thu, 19 Oct 2017 21:40:53 +0000 (15:40 -0600)]
tests: Test layer Properties2 feature support
Added test which creates a device using features from
vkGetPhysicalDeviceProperties2KHR and the pNext pointer to set enabled
features. Test verifies parameter checking vs. features is correct for
two cases -- one case in each parameter validation layer and core
validation layer.
Change-Id: Iba5c0f161f088438bfdd7c37a01015c2fe1dbff1
John Zulauf [Thu, 19 Oct 2017 00:13:37 +0000 (18:13 -0600)]
tests: Remove duplicate queue creation code
Refactored identical code to create the pQueueCreateInfos from
queue_properties present in four functions.
Change-Id: I5e61549c17661611662ca6b39fd0163facd37526