Courtney Goeltzenleuchter [Wed, 16 Sep 2015 18:59:15 +0000 (12:59 -0600)]
misc: Bump header version
Courtney Goeltzenleuchter [Wed, 16 Sep 2015 18:57:55 +0000 (12:57 -0600)]
shader_checker: Do not hold lock across API call.
Courtney Goeltzenleuchter [Wed, 16 Sep 2015 18:02:52 +0000 (12:02 -0600)]
bug 14564: and initial layout for image creation
Courtney Goeltzenleuchter [Wed, 16 Sep 2015 18:00:18 +0000 (12:00 -0600)]
misc: Add maxVertexInputBindings
Merge request 298.
Courtney Goeltzenleuchter [Wed, 16 Sep 2015 17:51:46 +0000 (11:51 -0600)]
misc: code movement due to header build changes
Courtney Goeltzenleuchter [Wed, 16 Sep 2015 00:03:22 +0000 (18:03 -0600)]
Bug 14643: use VkClearDepthStencilValue
Courtney Goeltzenleuchter [Tue, 15 Sep 2015 00:01:17 +0000 (18:01 -0600)]
bug-14538: Remove validation error codes
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14538
Courtney Goeltzenleuchter [Mon, 14 Sep 2015 23:22:16 +0000 (17:22 -0600)]
bug 14509: Rename Layer and Extension queries
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14509
https://gitlab.khronos.org/vulkan/vulkan/merge_requests/334
Jon Ashburn [Thu, 17 Sep 2015 21:28:12 +0000 (15:28 -0600)]
layers: Move some fixed code into header files for APIDump and Generic
Jon Ashburn [Thu, 17 Sep 2015 16:00:32 +0000 (10:00 -0600)]
layers: Fix intercept of WSI instance entrypoints
ApiDump, Generic, ObjectTracker now intrcept WSI instance entrypoint and
only intercept if the extension is enabled
Jon Ashburn [Thu, 17 Sep 2015 00:08:32 +0000 (18:08 -0600)]
layers: Fix several bugs in WSI extension handling in layers
Layers weren't intercepting the WSI device extensions proerly, or weren't
NOT intercepting them if the extension wasn't enabled. Fixes to APIDump,
Generic, ScreenShot, MemTracker, ObjectTracker
Jon Ashburn [Wed, 16 Sep 2015 23:27:31 +0000 (17:27 -0600)]
layers: No assert on init instance table map.size != 1
Instance table map can have more than one entry if multiple instances.
Jon Ashburn [Tue, 15 Sep 2015 22:59:18 +0000 (16:59 -0600)]
layers: Remove the DEBUG_REPORT entrypoints from device dispatch structure.
these entrypoints are instance level.
Jon Ashburn [Tue, 15 Sep 2015 19:37:52 +0000 (13:37 -0600)]
loader: Remove windows disable of global optimization.
Now that vktrace now longer uses mhook, can reenable global optimize on Windows.
Tobin Ehlis [Wed, 16 Sep 2015 16:33:53 +0000 (10:33 -0600)]
layers: Update DrawState to handle creation of multiple gfx pipelines
Mark Lobodzinski [Tue, 15 Sep 2015 22:10:17 +0000 (16:10 -0600)]
layers: Various memtracker TODOs, fixed some error messages
Tobin Ehlis [Thu, 17 Sep 2015 15:15:21 +0000 (09:15 -0600)]
layers: Update vk_layer_settings.txt to clarify CALLBACK option and change DebugAction for all layers to "LOG_MSG"
Tobin Ehlis [Tue, 15 Sep 2015 21:02:17 +0000 (15:02 -0600)]
layers: Improve invalid object checks of ObjectTracker
ObjectTracker now correctly stores queried PhysicalDevice and Queue information and validates that these objects are correct whenever passed in as params. Now handling arrays of Objects passed into API functions as parameters. Removed special exceptions for VkFence, VkDeviceMemory, and VkImage types that were causing them to skip some checks.
Moved a few validation tests that had been under MemTracker into ObjectTracker as it now catches the invalid VkImage and VkDeviceMemory cases. Updated master document to reflect this.
Tony Barbour [Wed, 16 Sep 2015 21:01:32 +0000 (15:01 -0600)]
demos: trivial fixes for cube problems
Courtney Goeltzenleuchter [Fri, 7 Aug 2015 15:53:18 +0000 (09:53 -0600)]
loader: Need to init instance dispatch without layers
Application that enabled DEBUG_REPORT but did not register
any layers would get into a deadlock due to improperly
initialized instance dispatch table.
Cody Northrop [Wed, 16 Sep 2015 14:35:29 +0000 (08:35 -0600)]
layers: Add return value to non-void function
Tobin Ehlis [Mon, 14 Sep 2015 19:25:57 +0000 (13:25 -0600)]
layers: Migrate Fence checks from ObjectTracker to MemTracker
Tobin Ehlis [Tue, 15 Sep 2015 15:54:07 +0000 (09:54 -0600)]
layers: Example vk_layer_settings.txt file
Tobin Ehlis [Tue, 15 Sep 2015 15:55:54 +0000 (09:55 -0600)]
layers: Fix layer STDOUT logging
Mark Lobodzinski [Mon, 14 Sep 2015 23:43:42 +0000 (17:43 -0600)]
layers: Migrate MemTracker to allow log_msg callback to signal early return
Cody Northrop [Mon, 14 Sep 2015 19:48:12 +0000 (13:48 -0600)]
demos/tests: Fix aspectMask updates in a few spots
Ian Elliott [Tue, 15 Sep 2015 18:14:41 +0000 (12:14 -0600)]
layers: Another CreateDevice fix (was using WSI instance extension name)
Ian Elliott [Tue, 15 Sep 2015 17:55:46 +0000 (11:55 -0600)]
layers: Check if CreateDevice enabling WSI device extension, not instance
Some of the layers were checking whether VK_EXT_KHR_SWAPCHAIN_EXTENSION_NAME
(the WSI instance extension) is in the list of device extensions being enabled.
This is wrong. They should be checking whether
VK_EXT_KHR_DEVICE_SWAPCHAIN_EXTENSION_NAME (the WSI device extension) is in the
list of device extensions being enabled.
David Pinedo [Tue, 15 Sep 2015 16:58:27 +0000 (10:58 -0600)]
vktrace: Really put vktrace_layer.json and vktrace_layer.dll in the correct output dirs
This time for sure!
David Pinedo [Tue, 15 Sep 2015 16:25:09 +0000 (10:25 -0600)]
vktrace: Put vktrace_layer.json and vktrace_layer.dll in the correct output dirs
Courtney Goeltzenleuchter [Mon, 14 Sep 2015 22:36:13 +0000 (16:36 -0600)]
bug-14583: Remove the unneeded vkBufferViewType
No longer have viewType to distinguish the type, so pull
it internal and use for descriptor sets.
Courtney Goeltzenleuchter [Mon, 14 Sep 2015 20:14:21 +0000 (14:14 -0600)]
Bug 14583: Updates based on initial feedback
Courtney Goeltzenleuchter [Fri, 11 Sep 2015 21:29:21 +0000 (15:29 -0600)]
Bug 14583: Remove VkBufferView for UBO/SSBO descriptor types
For descriptor types:
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC
VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC
No longer need to create a VkBufferView, instead can
put the buffer, offset and range directly into a descriptor.
Many places in the driver assumed it could point to a persistent
buffer view and that is no longer the case. Now cache the
view info rather than a pointer to deal with that.
Courtney Goeltzenleuchter [Fri, 11 Sep 2015 17:47:05 +0000 (11:47 -0600)]
vulkan: Add maxDescriptorSet*BuffersDynamic to limits
Courtney Goeltzenleuchter [Fri, 11 Sep 2015 17:40:48 +0000 (11:40 -0600)]
vulkan: Add missing _BIT to some bitfield enums.
Merge request #290 (https://gitlab.khronos.org/vulkan/vulkan/merge_requests/290)
Courtney Goeltzenleuchter [Fri, 11 Sep 2015 17:31:32 +0000 (11:31 -0600)]
vulkan: Bump version to 166
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 23:58:54 +0000 (17:58 -0600)]
Bug 12998: change ImageSubresourceRange's aspect to aspectMask
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 23:25:42 +0000 (17:25 -0600)]
Bug 12998: change imageAspectMast to aspectMask
change vkCmdClearDepthStencilAttachment imageAspectMast to aspectMask
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 22:41:13 +0000 (16:41 -0600)]
bug 14313: Allow copies to do multi-layer copies
Tobin Ehlis [Fri, 11 Sep 2015 18:57:55 +0000 (12:57 -0600)]
layers: Migrate ObjectTracker to updated Validation error reporting
Mark Lobodzinski [Fri, 11 Sep 2015 21:56:51 +0000 (15:56 -0600)]
layers: Fix spurious WSI memory binding error messages in MemTracker
Bug caused invalid errors in some games.
Tobin Ehlis [Wed, 9 Sep 2015 17:31:10 +0000 (11:31 -0600)]
layers: Migrate DrawState to new error reporting allowing for callback to signal early return
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 23:17:43 +0000 (17:17 -0600)]
Bug 12998: Document required depth formats and layouts in buffer memory
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 23:06:03 +0000 (17:06 -0600)]
bug 14530: Remove IMAGE_CREATE_INVARIANT_DATA_BIT
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 23:00:22 +0000 (17:00 -0600)]
Bug 14587: Rename flags: XXX_CREATE_SPARSE_BIT
XXX_CREATE_SPARSE_BIT --> XXX_CREATE_SPARSE_BINDING_BIT
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 22:38:41 +0000 (16:38 -0600)]
bug 14313: Rename ArraySlice to ArrayLayer
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 22:25:49 +0000 (16:25 -0600)]
Bug 14313: Remove VK_FORMAT_FEATURE_CONVERSION_BIT
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 20:14:11 +0000 (14:14 -0600)]
bug 14516: rename VK_IMAGE_USAGE_DEPTH_STENCIL_BIT
into VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 20:08:50 +0000 (14:08 -0600)]
bug 14541: rename VkTexAddress to VkTexAddressMode
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 19:44:12 +0000 (13:44 -0600)]
bug 14537: Improve VkImageFormatProperties
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 19:28:52 +0000 (13:28 -0600)]
Bug 14537: Improve VkImageFormatProperties
Commit:
e45df2e
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 18:54:32 +0000 (12:54 -0600)]
bug-13139: refactor sparse properties
Mark Lobodzinski [Thu, 10 Sep 2015 14:15:23 +0000 (08:15 -0600)]
layers: Reenable MemTracker reference tracking
Which was disabled during the type-safety dark times.
Courtney Goeltzenleuchter [Thu, 10 Sep 2015 17:23:57 +0000 (11:23 -0600)]
nulldrv: Fix compiler issues
Mark Lobodzinski [Mon, 7 Sep 2015 19:59:43 +0000 (13:59 -0600)]
vulkan.h: Change return types of some functions to void
Functions that should be thought of as "impossible to fail in the face
of valid parameters" have had their return types changed to void.
This includes all of the vkDestroy functions, vkFreeMemory, and vkUnmapMemory.
vkUpdateDescriptorSets is also included, because of the frequency the function
is expected to be called.
Courtney Goeltzenleuchter [Tue, 8 Sep 2015 23:42:57 +0000 (17:42 -0600)]
layers: Add note about vkCreateDevice behavior
Courtney Goeltzenleuchter [Tue, 8 Sep 2015 23:27:30 +0000 (17:27 -0600)]
vulkan: Add validation error result
When running with validation layers a validation layer
may abort an API call (due to app callback indicating so).
Since there are no validation error codes in vulkan.h
we need to define one here to return for such cases.
Details of the validation failure are available via the
DEBUG_REPORT callback.
Courtney Goeltzenleuchter [Tue, 8 Sep 2015 22:57:22 +0000 (16:57 -0600)]
demos: Do not bail on validation error
Courtney Goeltzenleuchter [Fri, 4 Sep 2015 21:03:52 +0000 (15:03 -0600)]
draw_state: Implement bailout case for one test
Proof out the bailout case. Fill in others in following
commit(s)
Courtney Goeltzenleuchter [Fri, 4 Sep 2015 19:52:24 +0000 (13:52 -0600)]
layers: Add bailout flag to debug report callback
Layer validation tests will deliberately induce
errors that the validation layer should catch.
In these cases we don't really want the layer to call
down the chain once it's detected a failure. We can't
know that in the layer so changing the return value
on the callback from void to VkBool32 so that the
callback can indicate if the call should continue
or not. true = bail.
That allows the call chain to execute normally,
not segfault in the driver and allow the test
to clean things up.
Courtney Goeltzenleuchter [Fri, 4 Sep 2015 19:47:07 +0000 (13:47 -0600)]
mem_tracker: validation comment
Courtney Goeltzenleuchter [Fri, 4 Sep 2015 19:39:59 +0000 (13:39 -0600)]
bug-14538: Remove driver validation checks
Marked validation checks done in the driver with
TODOVV. Once we verify the check is covered in a
validation layer we can remove the driver code.
Courtney Goeltzenleuchter [Fri, 4 Sep 2015 19:18:58 +0000 (13:18 -0600)]
layers: Remove unused functions
Cody Northrop [Thu, 10 Sep 2015 15:48:42 +0000 (09:48 -0600)]
layers: Add DeviceLimits json files
Tobin Ehlis [Wed, 9 Sep 2015 21:12:35 +0000 (15:12 -0600)]
layers: In DrawState only validate bound VBO index at the time of Draw
Previously validating this at the time of VBO bound and when PSO bound. This could result in checking against stale state, though, and thereby causing false positives.
Tobin Ehlis [Wed, 9 Sep 2015 19:31:01 +0000 (13:31 -0600)]
layers: DrawState fix to prevent false positives when matching PipelineLayouts
Updated existing check where PipelineLayout found with vkBindDescriptorSets was always checked against PipelineLayout from PSO. Since there are cases when a Draw requires no Descriptors the check was modified for now to only occur when vkCmdBindDescriptorSets has been called. This is still not perfect but will prevent false positives.
Really need to identify when it's valid to not call vkCmdBindDescriptorSets and, if so, don't perform the PipelineLayout match check.
Tobin Ehlis [Mon, 7 Sep 2015 21:16:39 +0000 (15:16 -0600)]
demos: Fix demos to correctly query physicalDevice count
Tobin Ehlis [Tue, 8 Sep 2015 14:59:48 +0000 (08:59 -0600)]
layers: Fix ScreenShot layer to handle EnumeratePhysicalDevices query count case
Tobin Ehlis [Thu, 3 Sep 2015 15:50:06 +0000 (09:50 -0600)]
layers: Initial framework for DeviceLimits layer
This includes many initial entrypoints and setting up function intercepts with only a few actual checks to begin. DeviceLimits layer is intended to capture two broad categories of errors:
1. Incorrect use of APIs to query device capabilities
2. Attempt to use API functionality beyond the capability of the underlying device
DeviceLimits stores its own internal record of underlying device capabilities and flag errors if requests are made beyond those limits.
Initial checks and documentation include verification of EnumeratePhysicalDevices call and some basic queue create/get validation.
Jon Ashburn [Wed, 9 Sep 2015 17:29:24 +0000 (11:29 -0600)]
loader: Use GetProcAddr function names from layer manifest file
No longer assume vkGetInstanceProcAddr or <layerName>GetInstanceProcAddr to find
layer's instance GetProcAddrs. And similiar for device ProcAddr. Instead use
any value specified in manifest file. If none specified in manifest file then
assume vkGetInstanceProcAddr or vkGetDeviceProcAddr.
Cody Northrop [Wed, 9 Sep 2015 16:21:49 +0000 (10:21 -0600)]
demos: Prevent tri rendering during shutdown
Mark Lobodzinski [Mon, 7 Sep 2015 18:56:17 +0000 (12:56 -0600)]
vulkan.h: Refactoring physical device sparse properties and limits, bug# 13139
Part of changes for header revision V161.
Mark Lobodzinski [Thu, 3 Sep 2015 21:21:52 +0000 (15:21 -0600)]
vulkan.h: Add bufferFeatures to VkFormatProperties, bug #14546
David Pinedo [Tue, 8 Sep 2015 17:07:46 +0000 (11:07 -0600)]
Windows build: rename vulkan.0.dll to vulkan-0.dll
Mike Stroyan [Mon, 7 Sep 2015 14:58:10 +0000 (08:58 -0600)]
documentation: Detail DRI3 use on ubuntu 15.04
Updated DRI3 discussion in README.md and BUILD.md.
Jon Ashburn [Fri, 28 Aug 2015 21:58:46 +0000 (14:58 -0700)]
loader: Fix Windows build for alloc stuff
Jon Ashburn [Fri, 28 Aug 2015 21:19:27 +0000 (15:19 -0600)]
loader: make thirdparty code use allocation callbacks
Use TLS to keep instance pointer and use this for cJSON alloc/free
callback.
Jon Ashburn [Fri, 28 Aug 2015 19:48:40 +0000 (13:48 -0600)]
demos: Add allocation callback to tri test CreateInstance
Jon Ashburn [Fri, 28 Aug 2015 19:38:21 +0000 (13:38 -0600)]
loader: Make use of app provided allocation callbacks
Convert all heap allocs/frees to use loader_heap_alloc() or loader_heap_free().
Before CreateInstance this will use malloc/free. At (and after) CreateInstance
alloc callbacks are stored and used for any allocations.
Exceptions are thirdparty code (cJSON and dirent_on_windows) still always use
malloc/free. Plan to address these in later patch if ti makes sense.
Jon Ashburn [Thu, 27 Aug 2015 21:23:52 +0000 (15:23 -0600)]
loader: Add support for realloc using the app allocation callbacks.
Jon Ashburn [Thu, 27 Aug 2015 19:06:58 +0000 (13:06 -0600)]
loader: convert to using loader_stack_alloc for consistency
David Pinedo [Fri, 4 Sep 2015 21:33:22 +0000 (15:33 -0600)]
WSI: Convert from VERSION to REVISION in nulldrv
Ian Elliott [Fri, 4 Sep 2015 20:14:35 +0000 (14:14 -0600)]
All extensions single revision number instead of major.minor.patch
This was decided during the August face-to-face. Originally, the WSI
extensions did it the normal OpenGL way (single revision number), and the debug
extensions did it the new major.minor.patch way. When I tried to convert WSI,
an objection was raised. We decided to go with the OpenGL way.
This commit also changes vulkaninfo to report the single revision number.
This commit also changes the extension "number" assigned to the 2 debug
extensions, basd on a "registration" email that Ian Elliott sent to Jon Leech
on 21 August, 2015. The initial set of "registered" extensions are (with their
numbers):
1.VK_EXT_KHR_swapchain
2.VK_EXT_KHR_device_swapchain
3.VK_EXT_KHR_display
4.VK_EXT_KHR_display_swapchain
5.VK_EXT_LUNARG_debug_report
6.VK_EXT_LUNARG_debug_marker
Ian Elliott [Fri, 4 Sep 2015 20:02:04 +0000 (14:02 -0600)]
WSI: Convert from VERSION to REVISION
Ian Elliott [Fri, 4 Sep 2015 19:57:22 +0000 (13:57 -0600)]
WSI: Update headers for WSI swapchain extensions (versions 51 & 17).
Ian Elliott [Fri, 21 Aug 2015 21:09:33 +0000 (15:09 -0600)]
WSI: Convert WSI swapchain extension usage to new KHR style
Ian Elliott [Fri, 21 Aug 2015 19:43:31 +0000 (13:43 -0600)]
WSI: Update headers for WSI swapchain extensions (versions 47 & 15).
BIG RENAME: The names change for the extensions, header files, enums,
functions, etc.
Ian Elliott [Fri, 21 Aug 2015 20:27:04 +0000 (14:27 -0600)]
WSI: Remove old loader code for the VK_WSI_LunarG extension.
Cody Northrop [Thu, 3 Sep 2015 22:09:28 +0000 (16:09 -0600)]
demos: Set depth image aspect correctly
Tobin Ehlis [Tue, 1 Sep 2015 17:59:36 +0000 (11:59 -0600)]
layers: If layers receive bad filename for output log, report ERROR and fallback to stdout
Tobin Ehlis [Tue, 1 Sep 2015 17:46:36 +0000 (11:46 -0600)]
layers: Update some layers to avoid repeated call to get_dispatch_key()
Mark Lobodzinski [Tue, 1 Sep 2015 21:42:56 +0000 (15:42 -0600)]
vulkan.h: Bug-14476: Rename texelCoords to unnormalizedCoordinates
Courtney Goeltzenleuchter [Wed, 2 Sep 2015 19:07:51 +0000 (13:07 -0600)]
bug 14517: Rename cs parameter to stage
Courtney Goeltzenleuchter [Wed, 2 Sep 2015 17:04:44 +0000 (11:04 -0600)]
bug-14537: Improve VkImageFormatProperties
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14537
* Add VkSampleCountFlags that describes set of power-of-two sample
counts (VK_SAMPLE_COUNT_N = (1<<N))
* Use VkSampleCountFlags to describe exact supported sample count set
in VkImageFormatProperties
Mark Lobodzinski [Tue, 1 Sep 2015 17:19:08 +0000 (11:19 -0600)]
layers: MemTracker fixes for image usage flag validation.
Courtney Goeltzenleuchter [Tue, 1 Sep 2015 23:30:39 +0000 (17:30 -0600)]
Bug 14522: Remove VkAttachmentView
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14522
Several parts of the driver really want an attachment view
so I've included the attachment information in the
intel_img_view structure and initialize both when the
view is created.
Parts of the meta path only need intel_att_view and
I kept that in place.
Courtney Goeltzenleuchter [Wed, 2 Sep 2015 16:41:55 +0000 (10:41 -0600)]
bug-14515: Add occlusionQueryNonConservative feature
Cody Northrop [Tue, 1 Sep 2015 17:48:13 +0000 (11:48 -0600)]
windows: Fix a couple signed/unsigned warnings
Cody Northrop [Tue, 1 Sep 2015 17:47:50 +0000 (11:47 -0600)]
layers: Modify ScreenShot usage and layout flags to work cross vendor
Cody Northrop [Tue, 1 Sep 2015 16:18:45 +0000 (10:18 -0600)]
layers: Port screenshot fixes to master
Sourced from sdk-0.2 branch commit
c98372f1