rodneyhuff [Tue, 24 Apr 2018 18:21:53 +0000 (11:21 -0700)]
Image bind count is associated with pImageBinds rather than opaque binds
Karl Schultz [Tue, 24 Apr 2018 16:46:29 +0000 (10:46 -0600)]
tests: Workaround crash in PSOPolygonModeValid
This test has been crashing in some versions of Linux nvidia drivers.
Crash occurs in vkCreateGraphicsPipelines.
works: 375.27.14
fails: 387.42.03
This test sets rasterizerDiscardEnable to true as part of creating
a graphics pipeline. Setting it to false allows the test to pass.
The test also passes if no fragment shader is provided for the pipeline.
Several other tests set rasterizerDiscardEnable to true, but they
do not crash since they are negative tests and the call to
vkCreateGraphicsPipelines probably doesn't make it to the driver.
There's one other positive test that sets rasterizerDiscardEnable
to true, but it doesn't supply a fragment shader.
Since whether a crash occurs or not depends on the driver version
and because turning on discard isn't part of the test's goals, it
seems best to just turn off discard.
I've submitted a bug report to the vendor.
Change-Id: If1b3ee2db88ee5701bb731b96dcaa45d6bdcb287
Mark Lobodzinski [Tue, 24 Apr 2018 15:58:32 +0000 (11:58 -0400)]
header: Update to version 1.1.74 of Vulkan hdr
- update layer json files
- update vulkan_core.h
- update vk.xml
- update vulkan.hpp
- update validusage.json
- update vk_validation_error_messages.h
- update vk_validation_error_database.txt
- maintain local changes to reg.py
Change-Id: If0c52d13f78ddfcc7c9d316386c0d20399e97668
Jeremy Kniager [Mon, 23 Apr 2018 22:55:00 +0000 (16:55 -0600)]
layers: Add handling for NULL in core post call
Added handling in
PostCallRecordGetImageSparseMemoryRequirements2
when a nullptr is passed to 'reqs'
Change-Id: I444ec733d4a172329aceb0fcbb68568700b8f535
Eskil Sund [Thu, 19 Apr 2018 14:25:20 +0000 (16:25 +0200)]
layers: Fixes from PR #2566
Eskil Sund [Fri, 6 Apr 2018 14:56:32 +0000 (16:56 +0200)]
layers: Add VALIDATION_ERROR_32a00272
This adds VALIDATION_ERROR_32a00272 to core validation layer to catch
reset of descriptor pool in-flight. Also adding an accompanying test
case and an update of the validation layer database to reflect new
validation and test.
Karl Schultz [Fri, 20 Apr 2018 16:49:41 +0000 (10:49 -0600)]
build(win): Add dep to create dir before use
Add a CMake dependency for Windows builds to create
the layers/$CONFIG directory before running any of the
other steps that copy the layer json files to this directory.
This failure was sporadic and often did not fail because
other build steps that compiled the layers often created this
directory before the copy steps executed.
Because of the difficulty in reproducing this problem, it is not
certain that this fixes the problem. However, the mac Xcode
builds were already using this pattern to achieve the same goal.
Tony Barbour [Thu, 19 Apr 2018 17:41:36 +0000 (11:41 -0600)]
layers: Validate against nonCoherentAtomSize
FlushMappedMemoryRanges and InvalidateMappedMemoryRanges check
size and offset against nonCoherentAtomSize.
Github issues 329 & 2584
Gitlab Issue 611
Change-Id: I4cbc6c21f6fe4b6187b381b2565a90c61417bee5
Lenny Komow [Thu, 19 Apr 2018 19:20:22 +0000 (13:20 -0600)]
loader: Fix a 1.0/1.1 versioning bug
Fix a bug where when mixing a 1.0 and a 1.1 driver, if the loader
stores the 1.0 driver first, the apiVersion field in vkCreateInstance
will be rewritten to 1.0 for both drivers. Now it will only be
changed for the 1.0 driver, as intended.
Change-Id: I9e7c5e0b0b7c0eb660082319dcddd9e8ef8adc61
Mike Schuchardt [Fri, 6 Apr 2018 03:45:23 +0000 (21:45 -0600)]
scripts: Add spec.py check for ext changes
When the surrounding asciidoctor conditionals of a VUID change it may
impact validation even if the VUID text does not change. Detect this in
spec.py and flag for manual intervention.
Change-Id: Idf802955ba9bbfe911edd4114fb28bdddf5fcc9b
Mike Schuchardt [Wed, 18 Apr 2018 22:06:52 +0000 (16:06 -0600)]
demos: Enable all required exts for present caps
vkGetDeviceGroupPresentCapabilitiesKHR requires VK_KHR_SURFACE and VK_KHR_SWAPCHAIN
in addition to VK_KHR_DEVICE_GROUP
Mark Young [Wed, 18 Apr 2018 21:23:43 +0000 (15:23 -0600)]
loader: Clarify loader warning
Clarify several loader warnings about layers so that they include
the name of the layer that is causing an issue.
Change-Id: Ie48d73f6cc8466c3114597831fef451b3ab32bf7
Karl Schultz [Wed, 18 Apr 2018 17:46:21 +0000 (11:46 -0600)]
macos: Specify deployment target version
This allows using the build on macOS 10.12 even if built on 10.13.
Change-Id: I21939163551bb9a0d0088513a23dc5d2cf7f5206
Tobin Ehlis [Tue, 17 Apr 2018 16:09:48 +0000 (10:09 -0600)]
scripts:Account for extnumber key to fix warnings
With the addition of the 'extnumber' key update comparison to skip over
the extnumber as well as extname in order to avoid a bunch of
irrelevant warnings.
Tobin Ehlis [Tue, 17 Apr 2018 16:06:48 +0000 (10:06 -0600)]
demos:Add const to fix build warning
Explicit "const" for ppEnabledExtensionNames to fix build warning.
fixup
Tobin Ehlis [Tue, 17 Apr 2018 16:05:20 +0000 (10:05 -0600)]
loader:Fix build warnings
Add "fall through" comments on intentional fall through switch cases to
avoid compiler warnings.
Tobin Ehlis [Tue, 17 Apr 2018 22:15:01 +0000 (16:15 -0600)]
tests:Update 2nd CB test to change rect value
Modify ConfirmNoVLErrorWhenVkCmdClearAttachmentsCalledInSecondaryCB
positive test to change the rect value after the call to
vkCmdClearAttachments() in the secondary command buffer but before the
secondary CB is executed in vkCmdExecuteCommands().
This exposes a previous bug in validation layers where the pointer to
the VkClearRect was copied, but not the underlying rect itself.
Tobin Ehlis [Tue, 17 Apr 2018 22:14:26 +0000 (16:14 -0600)]
layers:Capture rect by value to validate 2nd cb
Fixes #2587
The lambda function was only capturing the pRect pointer by value so
the underlying rect value could still be changed between when the
command was submitted to a secondary CB and when the rect was validated
at CmdExecuteCommands() time.
Copy the actual rect value so that it can't change.
Chris Forbes [Mon, 16 Apr 2018 01:31:06 +0000 (18:31 -0700)]
layers: Validate subpass dependency access vs stage masks
Petr Kraus [Sat, 14 Apr 2018 12:45:17 +0000 (14:45 +0200)]
demos: Remove undesirable gpu_count assert
to allow the useful error message to be shown instead
Tobin Ehlis [Fri, 13 Apr 2018 21:24:13 +0000 (15:24 -0600)]
layers:Update comments to avoid compiler warnings
The simple "// fall through" comment causes the compiler to omit a
warning.
Lenny Komow [Tue, 17 Apr 2018 02:09:48 +0000 (20:09 -0600)]
loader: Bump loader copyright to 2018
Change-Id: I59b80b7f4bff37ac15fd30acc3f4600164afee90
Lenny Komow [Tue, 17 Apr 2018 02:08:05 +0000 (20:08 -0600)]
demos: Add vulkaninfo.rc file
Add an rc file for vulkaninfo, which allows the version number and
copyright to be encoded into the file. This is necessary to support
new runtime installer changes.
Change-Id: I95a1b4338e3071162cca028d75b7dbd5a35d0393
Lenny Komow [Mon, 16 Apr 2018 21:54:32 +0000 (15:54 -0600)]
externals: Update to latest glslang
Change-Id: I06c15a028941fc60bd6ddcd830a8401d83193753
Jeremy Kniager [Wed, 4 Apr 2018 22:02:33 +0000 (16:02 -0600)]
vulkaninfo: Fix array length skew
Added new struct pNextChainBuildingBlockInfo
to store sType and memory size of structs for
function buildpNextChain.
Change-Id: Ia49084d2e303336f0305a68303edaaf60f74d669
Jeremy Kniager [Fri, 30 Mar 2018 21:03:25 +0000 (15:03 -0600)]
vulkaninfo: Add core 1.1 extensions
Added support for the following extensions:
VK_KHR_multiview
VK_KHR_device_group
VK_KHR_device_group_creation
Change-Id: I103fd988518339f95f0eeb7e7408ef49dec8ec22
Karl Schultz [Sat, 14 Apr 2018 00:02:07 +0000 (18:02 -0600)]
macos: Pass argc/argv through to main cube code
This allows users to specify arguments like "--c 100"
Mark Lobodzinski [Mon, 16 Apr 2018 14:15:59 +0000 (08:15 -0600)]
header: Update to version 1.1.73 of the Vulkan hdr
- update json files
- update vk.xml
- update vulkan_core.h
- update validusage.json
- update vk_validation_error_messages.h
- update vk_validation_error_database.txt
- update vulkan.hpp
- removed checks for the following deprecated VUIDs related to
ImageCreateInfo and FormatProperties:
- VALIDATION_ERROR_09e007ae
- VALIDATION_ERROR_09e007b4
- VALIDATION_ERROR_09e007ac
- VALIDATION_ERROR_09e007a6
- VALIDATION_ERROR_09e007b2
- VALIDATION_ERROR_09e007a4
- VALIDATION_ERROR_09e007aa
- VALIDATION_ERROR_09e007a8
- VALIDATION_ERROR_09e007a2
- VALIDATION_ERROR_09e007b0
- modified CreateImageFormatSupportErrors test to remove killed checks
- modified ImageLayerUnsupportedFormat test to remove killed check
Change-Id: I8f1577747d87fdeb6f68b9db0340443a83c44630
Dave Houlton [Fri, 13 Apr 2018 21:04:35 +0000 (15:04 -0600)]
layers: fix PR2567 formatting errors
Change-Id: Id7c479d7a2421c468990125dcfe815363a440a39
Cort [Sat, 14 Apr 2018 19:17:59 +0000 (12:17 -0700)]
layers: add setIndex to log_msg output in ValidateDrawState()
Tobin Ehlis [Fri, 13 Apr 2018 19:14:59 +0000 (13:14 -0600)]
icd:Add new physical device query funcs to ICD
Add mock ICD support for vkGetPhysicalDeviceSurfacePresentModesKHR,
vkGetPhysicalDeviceSurfaceFormats[2]KHR,
vkGetPhysicalDeviceSurfaceSupportKHR,
vkGetPhysicalDeviceSurfaceCapabilities[2]KHR,
vkGetSwapchainImagesKHR and
vkAcquireNextImagesKHR.
Mark Lobodzinski [Fri, 13 Apr 2018 16:46:48 +0000 (10:46 -0600)]
tests: Fix typos in layer_validation_tests.cpp
Includes fixing a corresponding typo in a descriptor_sets log_msg call.
Change-Id: Ib876482357ff2b945fe411fbef68d421fdbfc802
Chris Forbes [Fri, 13 Apr 2018 16:34:15 +0000 (09:34 -0700)]
Don't clobber immutable samplers in update
The copy cases were already doing the right thing; the basic updates
missed the check for the sampler being immutable.
Fixes #2569
Jeff Bolz [Tue, 10 Apr 2018 19:32:18 +0000 (14:32 -0500)]
layers: Add support for VK_EXT_descriptor_indexing
Change-Id: Ieeaf9cbdff1c9b383d4f47ef678fe4a7467113cb
Mark Lobodzinski [Fri, 13 Apr 2018 16:10:13 +0000 (10:10 -0600)]
android: Add GetPhysDevFeatures2 to vulkan_wrapper
Change-Id: I186def1470aa0423f9bde273860df3c01bf1d4f4
Mark Lobodzinski [Thu, 12 Apr 2018 20:55:54 +0000 (14:55 -0600)]
travis: Avoid empty Travis CI job
Change-Id: Ifb917ab3cf72f0c89f3c7bc9b647156bf1259a50
Dave Houlton [Tue, 10 Apr 2018 22:41:14 +0000 (16:41 -0600)]
layers: maint2 image usage bit validation
Add partial support for VK_IMAGE_CREATE_EXTENDED_USAGE_BIT in
vkCreateImage(), currently just avoiding the usage bit checks when
EXTENDED_USAGE is specified. Full support will require an
exhaustive search of all compatible format's usage bits, which
seems pretty expensive. TODO for now.
Adds support for checking for a chained VkImageViewUsageCreateInfo
struct when doing usage bit validation in vkCreateImageView().
Change-Id: I79a5853dc93dfa54040ace162170f1226a978c2d
Karl Schultz [Thu, 12 Apr 2018 19:39:59 +0000 (13:39 -0600)]
demos: Remove unused var from vulkaninfo
Change-Id: I31c161117ec773240df006cac4e06dffff05c7c6
Mark Lobodzinski [Mon, 9 Apr 2018 21:28:28 +0000 (15:28 -0600)]
travis: Set up to test commit messages
Change-Id: I64adcdb59329eed77cd7c0dd4ff89362f73f72f4
Mark Lobodzinski [Mon, 9 Apr 2018 21:27:15 +0000 (15:27 -0600)]
scripts: Add commit message format checker
Change-Id: I94efe0326e3f68e19af605a1ff381da59d2d7d1d
Cort Stratton [Tue, 10 Apr 2018 21:52:49 +0000 (14:52 -0700)]
layers: use VUID in ValidateImageAspectLayout log msg
This commit also updates the corresponding test to expect
the VUID instead of a log message snippet.
Cort Stratton [Tue, 10 Apr 2018 21:52:49 +0000 (14:52 -0700)]
layers: add level/layer to ValidateImageAspectLayout log msg
This helps clarify the case where a transition fails due to a
specific subresource being in an unexpected layout.
Chris Forbes [Fri, 6 Apr 2018 15:59:47 +0000 (08:59 -0700)]
Fix missing validation errors when a CB never bound any descriptor sets
In this case, the last bound state would never be properly configured
and so we'd skip over this whole block.
Karl Schultz [Fri, 6 Apr 2018 21:55:59 +0000 (15:55 -0600)]
macos: Remove update_and_draw from cube demos
Adopting this change from MoltenVK. The wait and update steps
are no longer needed. Calling just demo_draw now works as well
on MVK as it does on other platforms.
Dave Houlton [Thu, 5 Apr 2018 22:20:33 +0000 (16:20 -0600)]
layers: multiplane image allow color aspect bit
There is a case (memory barrier) where a multiplane image can have
the color aspect bit set, so the general aspect check should allow
it. In the common case where only VK_IMAGE_ASPECT_PLANE_n_BIT_KHR
bits are allowed, there are specific VUIDs in place to enforce.
This fixes an "unexpected error" result that recently appeared for
the CopyImageMultiplaneAspectBits test.
Change-Id: I766da2940955d8a7b72ec26e4dbefe9e60eb0b08
Mike Schuchardt [Fri, 6 Apr 2018 04:44:05 +0000 (22:44 -0600)]
scripts: exclude vulkan headers from clang-format
Travis CI shows linux build failure on every header update because
upstream Vulkan-Docs files are not formatted with the clang-format style
of this repo. This change excludes the vulkan headers directory from
the CI clang-format check.
Change-Id: I6d1bee486d06b690f65aa2c3098de14f3c5931c9
Mark Lobodzinski [Thu, 5 Apr 2018 21:46:53 +0000 (15:46 -0600)]
header: Update to version 1.1.72 of the Vulkan hdr
- updated layer json files
- updated vulkan_core.h
- updated validusage.json
- updated vk_validation_error_database.txt
- updated vk_validation_error_messages.h
- updated vuid_mapping.py
- updated vk.xml
- updated vulkan.hpp
- moved vuid
1ae00652 to
1ae00f06
Change-Id: Id6ba342841cca04c0669b7feb39d82e2b8052443
Mark Lobodzinski [Wed, 21 Feb 2018 16:48:42 +0000 (09:48 -0700)]
layers: Add text-string VUID version of log_msg
Allows adding VUIDs for checks that are not yet public, or that do
not yet have numerical VUIDs assigned.
Change-Id: I9f3a92d8e085f20452a52439517e7cdf677631d3
Mark Lobodzinski [Tue, 3 Apr 2018 21:50:34 +0000 (15:50 -0600)]
layers: Add text vuid error message map
Change-Id: I71efc6127960a8fdff16a8279201f7e59be73bf3
Mark Lobodzinski [Tue, 27 Mar 2018 20:49:31 +0000 (14:49 -0600)]
scripts: Output vuid-string->message map
Change-Id: Id4123053da62fb8d2b4d32393d11e4aa6c030f92
Dave Houlton [Wed, 4 Apr 2018 17:41:48 +0000 (11:41 -0600)]
layers: fix typos
Change-Id: I93a01dfe0e7f49ba3f6992a5f6c8d312b524774a
John Zulauf [Wed, 4 Apr 2018 21:02:01 +0000 (15:02 -0600)]
tests: Unit tests for CreateDescriptorUpdateTempla
Added unit test for vkCreateDescriptorUpdateTemplate(KHR) validation
checks.
VALIDATION_ERROR_052002bc
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00350
VALIDATION_ERROR_052002be
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00351
VALIDATION_ERROR_052002c0
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00352
VALIDATION_ERROR_052002c2
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00353
Change-Id: I55bebc50757dd537f0be849aec38120fae41e181
John Zulauf [Wed, 4 Apr 2018 20:54:11 +0000 (14:54 -0600)]
layers: Add checks for CreateDescriptorUpdateTempl
Added four validation checks for vkCreateDescriptorUpdateTemplate(KHR)
and removed a false positive.
VALIDATION_ERROR_052002bc
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00350
VALIDATION_ERROR_052002be
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00351
VALIDATION_ERROR_052002c0
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00352
VALIDATION_ERROR_052002c2
VUID-VkDescriptorUpdateTemplateCreateInfo-templateType-00353
Updated autogen of object tracker s.t. that logic for noautovalidation
handles matches parameter validation, and spec generation, eliminating a
source of false positives.
Change-Id: Ib831eabd45a5083168355bca6b0e2beda3a76222
Tobin Ehlis [Thu, 5 Apr 2018 15:30:09 +0000 (09:30 -0600)]
docs:Fix my name spelling in README
Karl Schultz [Wed, 4 Apr 2018 22:15:32 +0000 (16:15 -0600)]
macos: Update vulkan framework version to 1.1
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:44:11 +0000 (22:44 +0000)]
layers: Avoid reading pointer to array when count is zero
Take for example VkSubmitInfo. It has, amongst others, two fields:
waitSemaphoreCount and pWaitSemaphores. The specification states that
if waitSemaphoreCount is zero, the application may leave pWaitSemaphores
uninitialized (in essence, that field is ignored).
The layers read that value anyway, triggering uninitialized read errors
by memory sanitization tools.
Fixes uninitialized read in QueueSubmitSemaphoresAndLayoutTracking.
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 21:52:06 +0000 (21:52 +0000)]
layers: Destroy object tracking after reporting undestroyed objects
Fixes a memleak in VkLayerTest.LeakAnObject.
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 21:37:56 +0000 (21:37 +0000)]
layers: Fix memleak in unique object's debug functions
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 22:15:03 +0000 (22:15 +0000)]
tests: End recording command buffer instead of resetting
Workaround a memory leak in NVIDIA's driver. Resetting a command buffer
while it's in the recording state leaks memory.
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:38:05 +0000 (22:38 +0000)]
tests: End command buffer in VtxBufferBadIndex
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:29:32 +0000 (23:29 +0000)]
tests: End command buffer in UpdateBufferWithinRenderPass
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:37:14 +0000 (22:37 +0000)]
tests: End command buffer in RenderPassWithinRenderPass
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:39:15 +0000 (22:39 +0000)]
tests: End command buffer in PushDescriptorUnboundSetTest
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:28:50 +0000 (23:28 +0000)]
tests: End command buffer in NullRenderPass
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:27:51 +0000 (23:27 +0000)]
tests: End command buffer in InvalidDynamicOffsetCases
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:27:30 +0000 (23:27 +0000)]
tests: End command buffer in InvalidDescriptorSetSamplerDestroyed
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:38:56 +0000 (22:38 +0000)]
tests: End command buffer in ImmutableSamplerOnlyDescriptor
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:38:39 +0000 (22:38 +0000)]
tests: End command buffer in FramebufferIncompatible
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:37:32 +0000 (22:37 +0000)]
tests: End command buffer in FillBufferWithinRenderPass
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:28:30 +0000 (23:28 +0000)]
tests: End command buffer in DynViewportAndScissorUndefinedDrawState
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:39:30 +0000 (22:39 +0000)]
tests: End command buffer in DynamicOffsetWithInactiveBinding
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:28:10 +0000 (23:28 +0000)]
tests: End command buffer in DescriptorSetCompatibility
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:37:49 +0000 (22:37 +0000)]
tests: End command buffer in CmdClearAttachmentTests
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:30:03 +0000 (23:30 +0000)]
tests: End command buffer in ClearDepthStencilImageErrors
Gabríel Arthúr Pétursson [Tue, 20 Mar 2018 23:29:47 +0000 (23:29 +0000)]
tests: End command buffer in ClearColorImageWithinRenderPass
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 22:38:22 +0000 (22:38 +0000)]
tests: End command buffer in BadVertexBufferOffset
Gabríel Arthúr Pétursson [Wed, 21 Mar 2018 23:55:55 +0000 (23:55 +0000)]
tests: Fix copy&paste error in a comment in vkrenderframework
Karl Schultz [Wed, 4 Apr 2018 20:56:13 +0000 (14:56 -0600)]
macos: Add new Vulkan headers to vulkan framework
Dave Houlton [Thu, 8 Mar 2018 21:34:47 +0000 (14:34 -0700)]
tests: Update CopyImage with sampler_YCbCr VUIDs
Modifies existing tests and adds new tests to verify VUIDs added or
modified by the sampler_YCbCr extension. Adds some helpers to the
test framework to verify enabled extension strings.
Change-Id: Ib48f3e53ae9d78e98a5e2233019be6616afaca01
Dave Houlton [Tue, 6 Mar 2018 18:08:51 +0000 (11:08 -0700)]
layers: add multiplane image formats and checks
Add support for new formats added by sampler_YCbCr and mainlined in
Vulkan 1.1. Adds single- and multi-plane formats to lookup utility
fxns. Adds checks for CmdCopyImage VUIDS that were added or modified.
Change-Id: I70279bd8d667bf50d53fce752b53bb7e2e0a2d67
Jeremy Kniager [Mon, 2 Apr 2018 20:44:47 +0000 (14:44 -0600)]
vulkaninfo: Add checks for some struct allocation
Added checks after attempted memory allocation in
AppGpuInit and before memory frees in
AppGpuDestroy.
Change-Id: Ie2c207bfabd24bec326b12eef0c58e2bdfe8b59a
Karl Schultz [Wed, 4 Apr 2018 00:28:03 +0000 (18:28 -0600)]
docs: Fix internal links in BUILD.md
Karl Schultz [Wed, 4 Apr 2018 00:26:40 +0000 (18:26 -0600)]
build: macOS: Adapt to changes in MoltenVK repo
John Zulauf [Mon, 2 Apr 2018 20:02:03 +0000 (14:02 -0600)]
test: Delete dead code ApiVersion tests
two of the apiVersion unit tests were too sensivite to configuration
issues and were disabled, deleted to avoid carrying dead code.
Change-Id: Ifb875dceb71e5a958c40c3f67966db4915f2d6df
John Zulauf [Fri, 30 Mar 2018 22:55:13 +0000 (16:55 -0600)]
tests: Added unit tests for apiVersion validations
Add three unit tests for apiVersion 0, < 1.0 and > 1.1 validation,
with the latter two disabled due to configuration sensitivity.
Change-Id: I4f40a1dc275b263ae02c2ae7ddce1b0c400092b2
John Zulauf [Fri, 30 Mar 2018 20:58:00 +0000 (14:58 -0600)]
tests: Add debug callbacks during CreateInstance
Added debug callback information to CreateInstance, such that
CreateInstance validation errors can be caught in the usual way.
Change-Id: Ie734e2b2eabbc6e63fc6196a539f22e52fe00546
John Zulauf [Fri, 30 Mar 2018 22:52:23 +0000 (16:52 -0600)]
loader: Improve 1.0 driver apiVersion fixup
The 1.1 loader attempts to avoid VK_ERROR_INCOMPATIBLE_DRIVER from 1.0
drivers by patching up the supplied apiVersion during CreateInstance.
Added support for apiVersions > 0 and < 1.0.
Change-Id: Iae350624c6f9f711890814b48adc3f5a17fdc47b
John Zulauf [Mon, 2 Apr 2018 16:55:18 +0000 (10:55 -0600)]
loader: Eliminate duplicate validation messages
Layer version mismatch validation messages were being generated multiple
times for each mismatching layer. Eliminated duplicate error messages
and fixed formatting issues.
Change-Id: Iffc5ff94f70fefc075b74764ae87a6593143f503
John Zulauf [Fri, 30 Mar 2018 20:51:59 +0000 (14:51 -0600)]
layers: Add correct validation for apiVersion
Update and correct validation of passed apiVersion for 1.1 specified
behavior. Instances with apiVersion > 1.1 will be validated as 1.1
instances (and warn). Instances with apiVersions < 0 and < 1.0 will be
validated as 1.0 instances and generate an error. Instances with
missing or 0 apiVersions will be treated as 1.0 instances.
LOGCONSOLE warning converted to log_msg warning.
Change-Id: I2debb6175cf094918fc86cdea2973ddae9479a0b
Dave Houlton [Fri, 30 Mar 2018 21:07:41 +0000 (15:07 -0600)]
layers: Fix multi-plane aspect bit check
Remove multi-plane formats from classification as 'color' formats
and add specific aspect bit checks for them.
Change-Id: Ie899a6f2a91ceb43e6fb92c3fdd9056e00849fc3
Dave Houlton [Fri, 30 Mar 2018 23:10:17 +0000 (17:10 -0600)]
demos: Add some cube lighting
Can stand it no longer. Added some minimal n-dot-L screen-space
lighting.
Change-Id: Ifaf664a5651f59d8904cbb064018c00d385ec3ed
Mark Lobodzinski [Sun, 1 Apr 2018 16:38:15 +0000 (10:38 -0600)]
layers: Remove layer prefix from log_msg calls
Change-Id: Iea43bd2f8f2c92d99b5fdf40abe94149a6fb860c
Mark Lobodzinski [Fri, 30 Mar 2018 20:26:00 +0000 (14:26 -0600)]
layers: Remove location field from log_msg calls
Removed location parameters from log_msg calls, and from layer
logging output functions.
Change-Id: Ia1e2ce012997efed1db7864761ae0e39c8bc7d9b
Mark Lobodzinski [Fri, 30 Mar 2018 16:09:03 +0000 (10:09 -0600)]
layers: Remove VUID spec text from log_msg strings
Removed format specifiers from log_msg text strings
Removed validation_error_map specifiers from log_msg parameter lists
Change-Id: I5bd22c60dabf534382ca4d371ef4dffff1829f6d
Shannon McPherson [Thu, 29 Mar 2018 17:27:39 +0000 (11:27 -0600)]
demos: Fix call to SurfaceCapabilities2EXT
VkGetPhysicalDeviceSurfaceCapabilities2EXT() requires VK_KHR_Display to
be enabled. Added VK_KHR_DISPLAY_EXTENSION_NAME to list of instance
extensions.
Change-Id: I566cb26045c18865b9c0b1a39b5f89d6d7ccb7f6
Shannon McPherson [Thu, 29 Mar 2018 17:38:06 +0000 (11:38 -0600)]
demos: Fix format of conditionals
Change-Id: I6c9d5d089107cb8f616084e59c0eb3f002ef2688
John Zulauf [Wed, 28 Mar 2018 15:55:03 +0000 (09:55 -0600)]
layers: Correct non-dispatchable type handling
Update threading layer non-dispatchable type handling to reflect updates
to the vulkan header for Linux/x32 memory model support. Includes new
static asserts to detect future mismatches.
Change-Id: Ieb1ae335978cf43083b4a17634d06cd7066ed144
John Zulauf [Sun, 25 Mar 2018 01:53:57 +0000 (19:53 -0600)]
tests: Add positive tests for ownership transfers
Add unit test cases for false positives regarding ownership transfers.
Specifically test the cases for ownership transfers between queue
families with mismatch queue capabilities (e.g. has graphics or not),
and for the case in which a layout is being changed during an ownership
transfer.
Change-Id: I02e4a94b5ceed26bf4b3d99066859dd47a9dd036
John Zulauf [Tue, 27 Mar 2018 16:12:37 +0000 (10:12 -0600)]
tests: Add access for queues objects by family
Add storage and accessors for queue objects from a vk_testing::Device
object. Additionally, remove duplicate allocations and clean up
destruction.
Change-Id: I8d2b21cc0973ab5fb69afd854b00fb8fc56ac06a
John Zulauf [Mon, 26 Mar 2018 20:45:12 +0000 (14:45 -0600)]
tests: Add queue support to command buffer objects
Allow command buffer objects to submit to different queues than the
device default queue, and utilize the extant vk_testing classes.
New method names match the style of the class Vk*Obj method names are in
Google style, vk_testing methods are named consitently with extant
membmer functions.
Change-Id: I3461f78f92818a049c516469d2cdd1c0572d6dcc