Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/Vulkan-Loader.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-08-09Separate Major.minor version checks from Full version checksmajor_minor_version_check_fixesCharles Giessen
loader_make_Version previously would decode the major, minor, and patch info out of version data. This results in erroneous version checks that took into account patch version when they shouldn't of. The loader_make_full_version function is introduced for code that wishes to get the full major.minor.patch version and uses of loader_make_version that need the full version have been replaced.
2022-08-04build: Update to header 1.3.224v1.3.224Mike Schuchardt
- Update known-good - Generate source
2022-07-30Use memmove for copying pApplicationInfoCharles Giessen
Replace memcpy with memmove in terminator_CreateInstance to prevent possible issues with the same memory being the source of the copy and the dest, as there is a for loop which makes it possible for that to happen.
2022-07-28build: Update to header 1.3.223v1.3.223Mike Schuchardt
- Update known-good - Generate source
2022-07-21build: Update to header 1.3.222v1.3.222Mike Schuchardt
- Update known-good - Generate source
2022-07-15Fix typo in setting linux environment variablesPan
Replace `;` with `:` in setting linux environment variables.
2022-07-14build: Update to header 1.3.221v1.3.221Mike Schuchardt
- Update known-good - Generate source
2022-07-11loader: Dynamically load Win8+ functionsMike Schuchardt
Allow loader to run on Windows 7 by dynamically loading function pointers for Windows 8 and above APIs.
2022-07-08Disable VulkanOn12/Dozen in Windows 7Charles Giessen
Chromium still supports building for Win7, as such the newly added support for VulkanOn12/Dozen needs to be excluded from said build. This is achieved by using the SDK version macros defined in <sdkddkver>
2022-07-08Fix corrupted pNext chain in vkCreateDeviceCharles Giessen
When creating a device, the loader looks for the VkDeviceGroupCreateInfo structure and replaces it with its own. This allows the loader to edit the struct. However, to do this required editing the pNext chain. Because the edited chain contained pointers to structures whose lifetimes end when the vkCreateDevice function returns, the pNext chain is now corrupted. This commit fixes that by storing a pointer to the user's VkDeviceGroupCreateInfo and fixing up the pNext chain to use that instead.
2022-07-07Initialize properly when statically linkedCharles Giessen
Previously, the loader supported static linking. This capability was restricted to MacOS only, however the necessary functionality was never implemented. This commit adds the required code to properly initialize the loader when statically linked with MacOS Since the test framework was designed to dynamically load everything, it would require significant rearchitecting to support it. As such, a simple verification executable was added to the live_verification folder, instead of full support in the test framework.
2022-07-07Refactor vk_loader_platform.hCharles Giessen
Move includes of vulkan headers into loader_common.h, delete dead code and unnecessary macro defines, and generally clean up the header.
2022-07-07build: Update to header 1.3.220v1.3.220Mike Schuchardt
- Update known-good - Generate source
2022-07-05Enable the Vulkan loader to load VulkanOn12/Dozen out of the ↵Jesse Natalie
D3DMappingLayers app package
2022-07-01Make tests get files in a consistent orderCharles Giessen
Use the order defined the FolderManager's to define the order readdir uses, rather than leaving it undetermined. This makes tests more consistent by forcing layers and drivers to always be found in the same order on all systems. Note: MacOS doesn't currently have consistent ordering due to a crash with ASAN. But even if ASAN isn't running, the dirent structure is being filled out incorrectly, causing further test failures. While not ideal to disable consistent ordering on MacOS, it is needed for linux and thus the issue isn't high enough priority to resolve.
2022-06-30build: Update to header 1.3.219v1.3.219Mike Schuchardt
- Update known-good - Generate source
2022-06-30Fix BUILD.gnYuly Novikov
Add newly added file stack_allocation.h Fixes #846
2022-06-24loader: device array dealloc fixMarcin Kańtoch
2022-06-24loader: Add unicode supportAndrew Naumov
2022-06-22Add 32 & 64 bit field to json manifestsCharles Giessen
Allows drivers and layers to specify if they are 32 bit or 64 bit in the manifest file. This makes the loader able to prune manifests without loading the library and finding that it failed to load.
2022-06-22Fix use-after-free in loader_add_layer_propertiesCharles Giessen
Occurs after file_vers is freed and when the layer manifest has a layers field but has a version of 1.0.0.
2022-06-22only descend into layer GPDPA from trampolineBrad Grantham
2022-06-20Prevent loader config from overriding project configGraeme Leese
The loader options dummy targets were being linked into the public interface of the loader, meaning that they were also set in projects the include the loader as a sub-project. These override the containing projects settings and can break things. There don't seem to be any interface requirements in these settings, so include them as PRIVATE, so that they stay local to the loader.
2022-06-16build: Update to header 1.3.218v1.3.218Mike Schuchardt
- Update known-good - Generate source - Add missing enums to test framework
2022-06-16tests: Shuffle devices for sort testMike Schuchardt
Shuffle the bus IDs for discrete devices pd0, pd3, and pd4. Notably this puts pd0 from icd0 in between pd4 and pd3 from icd2, making default sorted order extremely unlikely if not impossible.
2022-06-13build: Update to header 1.3.217v1.3.217Mike Schuchardt
- Update known-good - Generate source
2022-06-07Only check first GPDPA in the layer chain.Charles Giessen
When checking for unknown physical device functions, check the first layer that supports vk_layerGetPhysicalDeviceProcAddr in the chain starting with the layer closest to the application. This prevents unecessary work being done, and if any layer wraps VkInstance will properly call through the wrapping layer first without calling into any other layer.
2022-06-02build: Update to header 1.3.216v1.3.216Mike Schuchardt
- Update known-good - Generate source
2022-06-02Revert "fix #948 Only calls the first GPDPA in layer chain"Charles Giessen
This reverts commit a8c17d6a367417509aa7b11cf65083eac2b2f4c9.
2022-06-02Revert "Comment tweak to reflect new behaviour."Charles Giessen
This reverts commit d86dc61e76f66b32b6955e8e7cbfa3edc7ed7b32.
2022-06-01Comment tweak to reflect new behaviour.Andrew Cox
2022-06-01fix #948 Only calls the first GPDPA in layer chainAndrew Cox
2022-05-31Update layer and driver vkGetPhysDevProcAddr docsCharles Giessen
Better describe the function's purpose and behavior, moving the reason for introducing vk_layer|icdGetPhysicalDeviceProcAddr to a following section for clarity.
2022-05-31fix typoTim Gfrerer
resulsts -> results
2022-05-28Fix crashes from OOM in vkDestroyInstanceCharles Giessen
Various situations could cause an OOM to turn into a hard crash due to double freeing of memory that was improperly cleaned up. Also fixed memory leaks when layers would report OOM.
2022-05-28Keep allocated debug callbacks until destroy instanceCharles Giessen
Previously the loader would destroy any debug callbacks created during instance creation to later create new ones during instance destruction. This required a memory allocation to occur inside vkDestroyInstance, which can cause leaks if an OOM occurs during instance destruction. This commit simplifies the logic by keeping around the allocations made during instance creation by moving them into their own debug node chain. Then during instance destruction moves them back. Also renames several functions to better describe their intended purpose.
2022-05-27Use calloc to allocate memory for the search pathCharles Giessen
This prevents bugs where uninitialized memory is treated as a real path. It should fix an issue where sometimes CI would fail due to what appears to be a spurious path with junk characters.
2022-05-27Fix typo in env var tableMark Young
Introduced a typo in my last commit in the table regarding the disabling of instance extensions. This is not a Linux only env var.
2022-05-27Clean up environment var docsMark Young
Split up into two tables: - Active - Deprecated Clean up restrictions into their own column for easier viewing. Made text slightly smaller to fit more in a smaller space.
2022-05-26Clarify JSON Manifest "api_version"Mark Young
Clarify what is indicated by the "api_version" field in both layer and driver manifest files. Fixes issue #336.
2022-05-25Fix a NULL inst crashing during loader_icd_scanCharles Giessen
When checking for the portability driver field of driver manifests, the loader did not check if inst was NULL first. Since this function is called in pre-instance functions, this crashes the loader.
2022-05-24Use calloc instead of alloc+memsetCharles Giessen
Replace naked uses of malloc & free with loader_alloc & loader_free.
2022-05-24Use VkAllocationCallback in cJSONCharles Giessen
Make cJSON pass the VkAllocationCallbacks instead of the loader_instance. This removes and unecessary dependency between cJSON and the loader headers. It also somewhat simplifies the interface by not requiring the inst parameter everywhere, just in the creation of cJSON pointers and freeing.
2022-05-24Use VkAllocationCallbacks in windows direntCharles Giessen
Pass the allocation callbacks directly to dirent_on_windows. This removes a unecessary dependency between the loader headers and dirent_on_windows.
2022-05-24Refactor loader allocation functionalityCharles Giessen
Created wrapper functions loader_alloc, loader_calloc, loader_free, and loader_realloc. Made the existing loader allocation functions use them. Replaced manual usage of VkAllocatorCallbacks with the new wrapper functions.
2022-05-24build: Update to header 1.3.215v1.3.215Mike Schuchardt
- Update known-good - Generate source
2022-05-21docs: Fix typo in MoltenVK urlRutwik Choughule
2022-05-21Update supported versions in the docsLudovico de Nittis
Mention the supported versions that were missing. Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
2022-05-17build: Update to header 1.3.214v1.3.214Mike Schuchardt
- Update known-good - Generate source
2022-05-11build: Update to header 1.3.213v1.3.213Mike Schuchardt
- Update known-good - Generate source