aboutsummaryrefslogtreecommitdiff
path: root/loader
AgeCommit message (Collapse)Author
2017-02-14header: Update to Vulkan 1.0.40Mark Lobodzinski
fixed: - generators for latex math changes updated: - include/vulkan/vk_platform.h - include/vulkan/vulkan.h - scripts/generator.py - scripts/lvl_genvk.py - scripts/reg.py - scripts/vk.xml - include/vulkan/vulkan.hpp - layers/tests json files - loader SOVERSION Change-Id: Id7d6f9dee73888877f2e7528f5701871f54ece79
2017-02-13docs: Update LoaderAndLayerInterfaceMark Young
Added section detailing the loader's instance extension name filtering behavior and the environment varaible that can be used to disable the behavior. Change-Id: Iadbde47e2933a163906a7cfa1c4b340da0d73789
2017-02-13loader: Fix XDG path parsingKarl Schultz
Fixes #1474 Fix path parsing code to handle leading and trailing path separators. Also handle contiguous path separators. When encountering something like ::: in the path, the old code would add multiple entries containing only the relative part of the path (e.g., /vulkan.icd.d).
2017-02-10loader: Add env var to disable inst ext filterMark Young
Add an environmental variable to disable the instance extension filtering. Simply defining VK_LOADER_DISABLE_INST_EXT_FILTER to a non-zero number will disable the functionality. Change-Id: I953814b49e87289a35f154755521d5433474c920
2017-02-03loader: gh1449 - Fix mem leak on CTSMark Young
Fix a memory leak in the CTS test which fails randomly during the vkCreateInstance call. Change-Id: Ie72feac730d3854cb2af9e13a3687aa43081bfd5
2017-02-02loader: Improve Linux manifest searchBenjamin Saunders
Searching XDG_CONFIG_DIRS and XDG_DATA_DIRS instead of hard-coding specific paths improves portability, particularly on platforms which don't implement the Filesystem Hierarchy Standard. For example, this allows the loader to function correctly out of the box on NixOS.
2017-02-01loader: Minor language clarification, fix markupJeff Juliano
2017-01-27build: Enable declaration hiding warning on WindowsKarl Schultz
Fixes #1388 Turn on the Windows compiler option (4456) to report hidden declarations. Fix all places where this was occurring. Change-Id: I3346d87da8b70d6299c206fcac68520a091ed1a6
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-26loader: Protect loader macro lists from clang-formatMark Lobodzinski
Change-Id: I3e943a538d33737453a3e71edebbd026a1c7f6f3
2017-01-26build: Turn on "treat warnings as errors" on WinKarl Schultz
Also address compiler warnings: - Suppress warnings for inconsistently redefined snprintf on Windows with Visual Studio < 2015. Warnings for preprocessor redefinitions are still enabled on VS 2015 because snprintf is not redefined on VS 2015. - Turn off "changed behavior" warning with Visual Studio < 2015 for using initializers in constructors. MSFT "fixed" some forms of these initializers so that they clear members instead of just leaving them alone. Since clearing is usually desired, this isn't a problem in most cases. But if an object is reinstantiated on top of an existing object, via placement new for example, the clearing may not be desired if the first object's data was meant to be preserved. We don't count on this behavior. - Suppress linker warning for linking the loader in debug build on Windows. This warning is for mismatched runtime libraries and causes extra code to be linked in only for debug builds. Ignoring the warning is generally regarded as better than the alternatives. Change-Id: I8b0e311d3c80a8dd9ac0cc95f764ed1123efa86f
2017-01-25loader: Fix EnumPhysDev bugMark Young
Fix a bug found by Piers with regards to vkEnumeratePhysicalDevices. Basically, if the application called the function without first calling it with NULL pPhysicalDevices, the count would be wrong. Change-Id: If3a4ba60b17c64df2133d31d3692ee6da21c6a01
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-14loader: Fix static analysis warningsKarl Schultz
Handle possible null pointer dereferences. Misc other warnings, nothing too serious. Not addressing alloca concerns yet. Change-Id: I712a6b4996a4d900604867e373521ff4d1c53df5
2017-01-13loader: Improve loader loggingMark Young
Clean up some more logging strings with extra spaces. Also, updated the command-line output of the VK_LOADER_DEBUG messages so that they clearly indicate what type of log message is being outputted: INFO, WARNING, ERROR, PERF, and DEBUG. Change-Id: I8cbb5b058094febdccf912eb595f5b4f01c3485b
2017-01-12loader: Fix phys device error messageLenny Komow
Change-Id: I37cfdb4b290dc8d5be7c606e32eb8d369ea43c6a
2017-01-12loader: Modify EnumPhysDev functionsMark Young
Modify the loader's trampoline and terminator vkEnumeratePhysicalDevice functions to utilize helper functions. Also, fix the failure in CTS. Change-Id: Id9356fffd42f878c660ac8ee831e7527cce608bd
2017-01-12loader: Fix variable shadowing warning.Jamie Madill
Change-Id: I71916c5300c24158901123f775b7b2fec3293e5b
2017-01-11loader: Add more logging messagesMark Young
Add more logging messages on Error cases to help debugging. Change-Id: I78b6bd7c73d7234283bf94d745c8733d59752422
2017-01-05loader: gl167 - Remove unknown inst extensionsLenny Komow
Change-Id: I24aecbdab452a04514fd42a9a9ae7f3bcf1cd2ca
2016-12-29loader: Switch variable appropriatelyMark Young
A delete was being done using a variable that wasn't directly tied to the array. Change-Id: I59ba4bc86a72fc8158e3a7c46e13c54fb2409873
2016-12-27loader: EnumPhysDev fixesMark Young
Found a few issues, and I had some concerns about the physical device values enduring over multiple queries. Change-Id: Ifaa94a4ecf9edfc79bdd3b3d473db068952e3264
2016-12-23build: Parameterize def file nameLenny Komow
Change-Id: I697c856b7c7532a38823302a4decf78cdea583ae
2016-12-23loader: clean up comment and variableMichael Jurka
Make one variable's name plural to clarify that it contains more than one layer. Also, clean up a comment that wrapped prematurely to the next line.
2016-12-22loader: Fix out of memory in enumerate phys devsLenny Komow
Change-Id: I9f25875f065f7db58f9c8841965ba1f2f974de90
2016-12-22loader: Update term phys devices dynamicallyLenny Komow
Change-Id: Ib474a7af431746d9e820e188681d2a9310e94a0d
2016-12-22loader: Update tramp phys devices dynamicallyLenny Komow
Change-Id: I693598b5c9f72ecee10661e3af9420941b2bd67c
2016-12-22loader: guard gcc feature appropriatelyFrank Henigman
Macro __GNUC__ should be used to guard gcc-specific code. Also exclude clang because though it defines __GNUC__ it doesn't accept this particular gcc feature. Change-Id: I703289cad58e7675f4c4ca5e7635fc8fb35ae77e
2016-12-21loader: Fix validation errorCourtney Goeltzenleuchter
The string length validation will not detect strings that exceed the max length. For example, when i = max_length-1 and utf8[i] is a valid character (>= 0x20 and < 0x7f) no error is thrown and the next iteration will end the loop. This change extends the loop and the if check to catch this issue.
2016-12-21loader: Fix Clang warning in table_ops.hJamie Madill
This fixes the following warning: error: cast between incompatible calling conventions 'cdecl' and 'stdcall'; calls through this pointer may abort at runtime This was revelated by building the loader with Clang on Windows in 32-bits mode. In 64-bits this warning doesn't appear, presumably due to different calling conventions. Change-Id: I7018be38859695436487f582f515bfb08ca28e06
2016-12-19header: Update to Vulkan version 1.0.38Mark Lobodzinski
- header: Updated vulkan.h - scripts: Updated generator.py - scripts: Updated vk.xml - scripts: Merged recent genvk.py changes into lvl_genvk.py - layers: Updated json files - loader: Updated SOVERSION to 38 - header: Updated vulkan.hpp Change-Id: Id0f83c248169bd8b1e03a14c90a5f9b1661cfcc7
2016-12-15loader: Fix Clang warnings.Jamie Madill
error: equality comparison with extraneous parentheses error: comparison of array equal to a null pointer is always false error: using namespace directive in global context in header Change-Id: I52b5d9062653b9429b9c42b40eca54e71b6d794b
2016-12-13loader: Removed some unnecessary code.Mark Young
Now that all WSI paths need the ICD structs, I can get rid of a code path no longer used. Change-Id: Ib5073cd2074fcd66453dae5b6c89870c81f7f958
2016-12-13Allocate for real ICD surfaces for the VK_KHR_display extensionPiers Daniell
This was done for all the other WSI extensions, just not VK_KHR_display
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-12header: Update to Vulkan version 1.0.37Mark Lobodzinski
- header: Updated vulkan.h - scripts: Updated generator.py - scripts: Updated vk.xml - scripts: Merged recent genvk.py changes into lvl_genvk.py - layers: Updated json files - loader: Updated SOVERSION to 37 - header: Rebuilt and updated vulkan.hpp - layers: Updated thread_checker for new functions - scripts: Fix up vk_helper.py overzealous count detection Change-Id: Ia10f5fc759166a09999f01e68bbcadb30ddf67f7
2016-12-09Cmake: Move all find_packages to base CMakeLists.txtTony Barbour
Change-Id: Id27307788c7c230e75d620f1bf5470b1450289f2
2016-12-09Cmake: Add files needed to build with MirTony Barbour
Change-Id: I640e45db5d586a379674fb209e38075ba7f0cf29
2016-12-09Cmake: Move WSI compile decision to subdirectoriesTony Barbour
Change-Id: I61ac8910200a1751a23aa92fe0e7d955ee9e03e5
2016-12-08loader: Add CMake copy of def file to build dirMark Lobodzinski
Change-Id: I377ef3e58b49c345fcc5ac8d10bdee7e4c059bed
2016-12-08loader: Check in loader Windows def fileMark Lobodzinski
Change-Id: I184ce5efa8cd27cbbf93babf52d4a6b9b4266a24
2016-12-02loader: Modify debug_marker terminatorsMark Young
Modify the 2 debug marker terminators we use so that they don't call into the ICD unless the ICD commands exist. Change-Id: I72a96475f21d0fca572f3c5e6f5676782a8a4bf3
2016-12-01loader: const fixesFrank Henigman
Make the 'source_override' parameter of loader_get_manifest_files() const. The const was removed in 74d013a5, seemingly for convenience of calling loader_free_getenv(), not because it was incorrect. Give loader_free_getenv() the same signature in all implementations. Fix a memory leak where it was possible to exit loader_get_manifest_files() without calling loader_free_getenv(). Don't pass a potentially NULL value to loader_log().
2016-12-01loader: Modify conversion of real_icd_surfacesMark Young
This is the more appropriate way to cast the real_icd_surfaces values than downcasting the pointer. This is based off of Jamie Madill's changes. Change-Id: If63fb95994a92199d65fd3297bb092564446af97
2016-12-01loader: Fix cast warning in wsi.cJamie Madill
In 32-bits, this was downcasting a VkSurfaceKHR and comparing it with NULL. Since VkSurfaceKHR is defined as a uint64_t, it's better to cast the NULL to a VkSurfaceKHR to avoid a warning.
2016-12-01loader: avoid DEFAULT_VK_LAYERS_PATH redefinition.Frank Henigman
Commit df441f60 did this in the win32 section of the file, but missed the linux section. This commit fixes the linux section.
2016-12-01loader: spell 'separator' correctlyFrank Henigman
PATH_SEPERATOR -> PATH_SEPARATOR
2016-11-22docs: Fix loader doc mention of linux dirsMark Young
The Linux "Properly-Installed ICDs" section wasn't coming across into HTML properly. Change-Id: I2538b3c027c88ad5923d23f554bba1734c60ec06
2016-11-22loader: Fix debug report memory leaksMark Young
Found a couple of memory leaks in the debug report code in the loader while testing out allocators in cube. Change-Id: I56b401394ca43bd8eb9b4f85baa52dfa597a6f49