aboutsummaryrefslogtreecommitdiff
path: root/layers/parameter_validation.cpp
AgeCommit message (Collapse)Author
2017-04-24layers: Banish 'skip_call' once and foreverMark Lobodzinski
Except for swapchain.cpp, which is undergoing a merge into CV. Change-Id: I8b18518ef662a9a11a808ef3dce1b8f60d858fb3
2017-04-24layers: Final object-type cleanup and loose endsMark Lobodzinski
Fixed a few DebugReport object type casts and a couple of missed spots with internal object type usage. Change-Id: Iaa8bdcf60d5ec89e1da64227f2b7367ce6c64dc1
2017-04-22layers: Use UNKNOWN object type instead zero-castMark Lobodzinski
Change-Id: I36c175e78d7a33667f1485ed0e53f1dadab62a31
2017-04-12layers: Fix parameter validation ext enable structMark Lobodzinski
Change-Id: I48c27be03e5ccb4621e7c7fb7b21bb0bf1d8bceb
2017-04-03layers: incremental_present parameter validationTobin Ehlis
Add parameter validation for VK_KHR_incremental_present extension. If the VkPresentRegionsKHR is included down the struct chain for QueuePresentKHR() validate its parameters. Change-Id: I97abe552411f229eecbbf7df7d565f7953cdd1b7
2017-03-31layers: Fix WriteDescriptorSet::dstSet validationDustin Graves
VkWriteDescriptorSet::dstSet is ignored by vkCmdPushDescriptorSetsKHR, so the 'must not be a null handle' validation for dstSet has been moved from the code validating the VkWriteDescriptor struct members to the code validating the vkUpdateDescriptorSets function parameters. Change-Id: Ia6f11d33e4d57d4c848aab72cfd91da5d5a15a30
2017-03-29layers: Rename format utils, strip VkDave Houlton
Change-Id: I4d192db22c51d2e9224b74487bfd5d6a58405028
2017-03-29layers: refactor layer utilsDave Houlton
Split format-related helper fxns out of vk_layer_utils.cpp into a new file vk_format_utils.cpp. Remove the duplicated fxns in the render framework and share the new format utils across both projects. Rename the util fxns into CamelCase per coding std. Change-Id: I0f9a34bc5931dfca085dfdc8d4800664aec526cf
2017-03-16layers: Fix incorrect KHR/KHX ifdefs.Jamie Madill
In two places we were checking for the presence of the WIN32 KHR define instead of the KHX define where the enums and methods are defined. Fixes #1593. Change-Id: I0bf0c2e2ed734ed2c40a44c4cd7d468ba70ca9a4
2017-03-14header: Update to 1.0.43 header versionMark Lobodzinski
- updated include/vulkan/vulkan.h - updated scripts/cgenerator.py - updated scripts/vk.xml - updated layers json files - updated tests json files - updated loader SOVERSION - updated include/vulkan/vulkan.hpp - updated parameter_validation.cpp with new APIs - updated object_tracker.cpp with new APIs Change-Id: I1fd812cb376d5cddee5ab4acf2e4f8fe6d33b761
2017-03-14layers: Remove deprecated KHX extension from OT/PVMark Lobodzinski
Deleted references to GetPhysicalDeviceImageFormateProperties2KHX and GetPhysicalDeviceProperties2KHX from object_tracker and parameter_validation. Change-Id: I83e29bae8302dad6f774886d8472451220b426d2
2017-03-14layers: Add PV Maintenance1 negative viewport checkMark Lobodzinski
Negative viewport offsets are now allowed if the Maintenance1 extension is enabled. Change-Id: Ifb080ba71d688f431a0d12a9018d746f28377a15
2017-03-13layers: Add textureCompressionBC feature checkMark Lobodzinski
Change-Id: I4eca8c73a1cc2549402b436f8634fa9e72b9b9ce
2017-03-13layers: Add textureCompressionASTC_LDR feature checkMark Lobodzinski
Change-Id: I862b2e188e0e253890aa9e0fad8f97914e004c0a
2017-03-13layers: Add textureCompressionETC2 feature checkMark Lobodzinski
Change-Id: I13408cd02beda7c4f91a6e9424fa0d1109461b6d
2017-03-13layers: Validate samplerAnisotropy device featureMark Lobodzinski
Change-Id: I8b1262c34612870b9c8ebb1f62e7d6755219606f
2017-03-13layers: Finish multiViewport dev feature validationMark Lobodzinski
Change-Id: I58397785e7b73099d2a890246207075dae643652
2017-03-13layers: Validate device feature multiDrawIndirectMark Lobodzinski
Change-Id: Iaf9daa2bc1e0fe301fb28b6901af2687c232d9a8
2017-03-13layers: Validate imageCubeArray device featureMark Lobodzinski
Change-Id: Ie1bdcc06c71a7ef8a0fbc5d576403f4b1c6e1e75
2017-03-07layers: Fix parameter validationMark Young
An earlier change clobbered part of a parameter validation change. Change-Id: Ica28e79c17f094637e3a12c44dd25c5283c586ef
2017-03-01vulkan: update to header 1.0.42Mark Young
Updated all necessary files to 1.0.42. This includes the various headers as well as the loader, and the parameter validation, object tracking, and threading layers. Additionally, bump all layer JSON files to 1.0.42. Also, in this change: - Enable loader extension automation so that the loader now generates all extension entry-points automatically during build to reduce likelihood of missing a critical piece on header update. - Enable layer dispatch table extension automation for the same reason. - Fixes from Mark Lobodzinski and Tony Barbour to resolve crash in loader when working with Intel's Windows driver due to GetInstanceProcAddr getting called on inappropriate command names. Change-Id: Ic18d3fac2e145c386c0192031deb5089c91a00d8
2017-02-14layers: Fix a few parameter validation holesMark Lobodzinski
Added a few missing checks for validation return codes. Change-Id: Ia6a3a3fbf702ebb982d4f4d26510f3f8fdcf2710
2017-02-10tests: Fix UnusedPreserveAttachmentJeremy Hayes
Undefined shouldn't be an error since its a valid enumerant. Change-Id: I542b47cdf885bd9ccb96a0a113a56a849423800a
2017-02-09layers: Added some missing extensions to PVMark Lobodzinski
Added the display control and indirect count extensions. Support is now included for all 1.0.39 extensions. Change-Id: I299ffd939da0571920c401fb298bc3b8773a394b
2017-02-09layers: Enable autogen'd procmap for PVMark Lobodzinski
Routines and tables were previously hard-coded. They are now generated from vk.xml. Change-Id: I26c98bb42c9ccc287e9dd4c12447d66ea1c68d91
2017-02-09layers: Fix CmdUpdateBuffer API definitionMark Lobodzinski
Change-Id: I7a8a2215ceb3523ca74534fe547600bb585223a7
2017-02-08layers:Rename get_my_data_ptr to GetLayerDataPtrTobin Ehlis
Change utility function get_my_data_ptr() to be named GetLayerDataPtr() which is more descriptive and capital camel case in-line with coding standard.
2017-02-07layers:Update parameter validation for gpdp2Tobin Ehlis
Update get_physical_device_properties2 parameter validation: -Allow new pNext down CreateDevice struct -Add some post-call validation when querying image formats -Rename skip_call to skip
2017-01-31layers: Add sparse image tiling check - GH283Dave Houlton
Fixed the missing sparse residency with linear tiling check from GitHub issue #283. Also added 6 related valid usage checks from the database. Change-Id: I357e63ee0e6e4787e1aeea67756906e591ba8187
2017-01-31layers: Move CreateRenderPass format check to PVMark Lobodzinski
Format validation check was in image layer -- removed the API completely and moved check to parameter_validation. Also updated to use the VU ID and noted it in the database. Change-Id: I339925be7615777cfb1214ffe456a2498c676177
2017-01-26repo: Clang-format LVL source files using GoogleMark Lobodzinski
Switch clang-format standard from the LLVM style to the Google style for more consistency. Change-Id: I247c4abc275d7873a91522e1e234198adaa24033
2017-01-26repo: Clang-format c/cpp/h LVL files using LLVMMark Lobodzinski
Bring all source files in the repo up to date with consistent coding style/standard. Change-Id: Iceedbc17109974d3a0437fc4995441c9ad7e0c23
2017-01-24loader: Update the loader to 1.0.39Mark Young
Add new extensions for 1.0.39. Also, updated layers to include minimal set of functionality for 1.0.39 extensions. Extensions include: - VK_KHR_get_physical_device_properties2 - VK_KHR_shader_draw_parameters - VK_EXT_direct_mode_display - VK_EXT_display_surface_counter - VK_EXT_display_control Also, redo the LoaderAndLayerIf document. Change-Id: I10412086da7a798afe832a3892e18f606259b5af
2017-01-09layers: Update Valid Usage enums (VL-69)Mike Weiblen
Update Valid Usage enums in parameter_validation.cpp. Update VU status in the database. Completes Jira task VL-69. Change-Id: Ie16c41dd0ad8f264b62b3d5b60d100d7b9b3f229
2017-01-09layers: Tag internal helper functions as staticMike Weiblen
Reduce the scope of internal helper functions by declaring them static. This is only changes lines related to VL-69, rather than a full sweep of the code. Change-Id: I3593e519d11066cd8631f56131de39e6e3b73f50
2017-01-09layers: Canonicalize function names in log_msg()Mike Weiblen
For consistancy, Vulkan function names in log_msg strings should include the vk prefix and end with parens. Also fix some typos and cut/paste errors. This only touches lines related to VL-69; it is not a sweep of all instances in the code. Change-Id: I41a8f0c9d3b93203f67aef3fa570eb8d95725d31
2016-12-28layers: Fix VkGraphicsPipelineCreateInfo flags checkMaks Naumov
"pCreateInfos->flags | VK_PIPELINE_CREATE_DERIVATIVE_BIT" is always true
2016-12-20layers: Remove unused header from threading/PVMark Lobodzinski
vk_struct_validate_helper.h not used. Change-Id: I19757e96900e0500f4db9355c38a497936706bba
2016-12-20layers: Remove enum_validate_helper from PVMark Lobodzinski
A single call was used, replaced with an internal generated function call and removed the old include. Added note with validation error ID. Change-Id: Ied88daf5bab003269c44ef2bef8b2eb81a9e9094
2016-12-19layers: Add scissor/viewport count checksMark Lobodzinski
Change-Id: I35977325f662d3e4df84d02d2eefa4383fae9c05
2016-12-19layers: GH1261, Incorrect ParamValidation error msgsMark Lobodzinski
Out-of-date dynamic state errors incorrectly specified that viewport or scissor counts had to be greater than zero 'if the dynamic state bit was not specified'. Removed this confusing condition. Change-Id: Idf206e8671b04979b7a0f5e9597e4a7aec50333f
2016-12-18layers: Move new check into parameter validationMark Lobodzinski
Added an old CreateGraphicsPipelines CV check into PV. Change-Id: I68310859e4ffc926502549b46a2fcc82af0e3538
2016-12-15layers: Updated error enums for sparse_binding checksMark Lobodzinski
Change-Id: Ib76fcb782a54edf6e53d17fed0bcb25eecca22d9
2016-12-15layers: GH1260, SPARSE_BINDING_BIT validationMaciej Jesionowski
- add error message for size (error 00663) - add error messages for buffer and image flags (error 00669 and 02160) - remove obsolete TODOs - fix a typo in vkCreateImage validation, add error code Change-Id: I50d6111c4aed1b348119a9664ec299f7c2cb7884
2016-12-12loader: Add support for 1.0.35 extensionMark Young
Add support for the NVX_device_generated_commands. This was necessary since it exposes one instance command (which takes a VkPhysicalDevice). Change-Id: I1da4c24ca0d385a6485581f55a1b19aa7ea51d24
2016-12-02layers:Handle NULL DebugMarker function ptrsTobin Ehlis
Fixes #1074 Object_tracker and parameter_checker intercept DebugMarker extension functions which may not be supported by underlying device and therefore could terminate with a NULL function call. Updating these layers to handle this case by making sure that their downstream function ptr is not null before calling down the chain. If the downstream function ptr is null, considering that VK_SUCCESS in the layers for functions with VkResult return code.
2016-11-29layers: Revert some include order changes in PVChris Forbes
Windows build is cranky about this -- if things are done in the wrong order, we can end up with some symbols in the dispatch table being mangled to their W-suffixed versions thanks to windows.h madness. Signed-off-by: Chris Forbes <chrisforbes@google.com>
2016-11-29layers: Remove some noise from PV, add to authorsChris Forbes
Signed-off-by: Chris Forbes <chrisforbes@google.com>
2016-11-29layers: Fix broken use of phys device as device dispatch keyChris Forbes
This made no sense. The physical device's dispatch key is the same as the instance. Signed-off-by: Chris Forbes <chrisforbes@google.com>
2016-11-29layers: move device dispatch table into layer_data in PVChris Forbes
Signed-off-by: Chris Forbes <chrisforbes@google.com>