Charles Giessen [Mon, 18 Nov 2019 22:11:37 +0000 (15:11 -0700)]
vulkaninfo: check that extensions aren't disabled
Previous versions of vulkainfo's autogen code didn't check if enums and
bitmasks from extensions were disabled, possibly letting them leak into
the generated code. This commit checks and skips any fields which aren't
supported.
File changed:
scripts/vulkaninfo_generator.py
Change-Id: I0e6fd9872d9377a17797cfcf6c2fbcee649e3657
Daniel Charles [Wed, 13 Nov 2019 23:54:08 +0000 (15:54 -0800)]
vulkaninfo: return properly on xcb onnection errors
Calling xcb_disconnect on the connection to release memory and
return.
Otherwise on a headless display with no X11 backend the nullptr
for the connection will cause segmentation fault on following
xcb calls when xcb_connection_has_error returns a code.
examples ran on headless displays
DISPLAY=:0 vulkaninfo returns XCB_CONN_ERROR
DISPLAY=foobar vulkaninfo returns XCB_CONN_CLOSED_PARSE_ERR
v2:restore xcb_connection=nullptr as other xcb calls need it when
error happened.
Signed-off-by: Daniel Charles <daniel.charles@intel.com>
Shannon McPherson [Tue, 5 Nov 2019 23:08:07 +0000 (16:08 -0700)]
build: Update known good for 1.1.127 Vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.h`
- `icd/generated/vk_typemap_helper.h`
- `vulkaninfo/generated/vulkaninfo.hpp`
Change-Id: Iac0b0d48ee0efc5d8e2d0db0a17b71bcb5e69388
Jeremy Kniager [Wed, 6 Nov 2019 16:31:35 +0000 (09:31 -0700)]
build: Update MoltenVK version to v1.0.38
Change-Id: Idca07170a7ff2f7a6cf163ef9ab814cffc9ae5ea
Charles Giessen [Fri, 1 Nov 2019 17:40:27 +0000 (11:40 -0600)]
vulkaninfo: added more documentation for show-formats
The indented behavior was to only show format properties if requested
for text output and always show them for html & json. This commit
modifies the --help output and documentation to better reflect this
behavior.
files modified
- vulkaninfo/vulkaninfo.cpp
- vulkaninfo/vulkaninfo.md
Change-Id: I5e35b8af2db74c37dfadf669ffc81e69304fc4e0
Jeremy Kniager [Fri, 1 Nov 2019 15:48:39 +0000 (09:48 -0600)]
vulkaninfo: Fix gitlab issue 181
Fixes vulkaninfo.app bundle crashing on startup.
Change-Id: I515611c28da35a0f55edcb8492d26ad78046c0c2
Charles Giessen [Wed, 30 Oct 2019 22:44:04 +0000 (16:44 -0600)]
vulkaninfo: fix infinite sleep for non text outputs
Previous versions, in win32 would sleep infinitely if a crash occured. This commit will first check if its a text output first before sleeping, to preserve the error if it is in a console but return immediate if it isn't.
Change-Id: Ib1b43001e970c8c3114e666d96b24dc3c557a579
Charles Giessen [Wed, 30 Oct 2019 21:22:38 +0000 (15:22 -0600)]
vulkaninfo: fixed spelling of properties
Change-Id: I4cd38c06842c99b514b4f289f7856eb810c111f3
Mike Schuchardt [Tue, 29 Oct 2019 23:16:17 +0000 (16:16 -0700)]
gn: Generate VkICD_mock_icd.json on mac
Charles Giessen [Tue, 29 Oct 2019 16:19:49 +0000 (10:19 -0600)]
vulkaninfo: add documentation for show-formats
Change-Id: I5b1aa1bec4daa1e7b2d8a47633011ae7c800b372
Charles Giessen [Tue, 29 Oct 2019 00:49:38 +0000 (18:49 -0600)]
vulkaninfo: add documentation for --show-formats
A recent PR was merged that made format properties not shown by
default in the text output. This documents the change in the options
list of the executable.
files changed
- vulkaninfo/vulkaninfo.cpp
Change-Id: I1db65f8c9fae31dd047856d0f0d483a304405dd2
Shannon McPherson [Mon, 28 Oct 2019 19:53:33 +0000 (13:53 -0600)]
build: Update known-good commits for SDK 126
Change-Id: I261460fc7612a828cd4d9848a9bcf43c2f2dba41
Shannon McPherson [Tue, 22 Oct 2019 22:25:01 +0000 (16:25 -0600)]
build: Update known good for 1.1.126 Vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `build-android/vulkan-headers_revision_android`
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.cpp`
- `scripts/known_good.json`
Change-Id: I1ef8b689d76c76822b2dab8ef7fd138bb46f7314
Georges Basile Stavracas Neto [Sat, 5 Oct 2019 14:53:39 +0000 (11:53 -0300)]
cube: Try to bind to wl_compositor v4
VK_KHR_incremental_present requires the client to
bind to wl_compositor v4. This is because internally
some Vulkan Wayland drivers convert VkPresentRegionKHR
to wl_surface.damage_buffer()[1], which is a v4-only
request.
If the Wayland compositor advertises wl_compositor v4,
we can bind to it and make incremental present actually
work.
[1] https://gitlab.freedesktop.org/mesa/mesa/blob/master/src/vulkan/wsi/wsi_common_wayland.c#L862
Shannon McPherson [Tue, 15 Oct 2019 17:45:18 +0000 (11:45 -0600)]
build: Update known good for 1.1.124 Vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `build-android/vulkan-headers_revision_android`
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.h`
- `icd/generated/vk_typemap_helper.h`
- `scripts/known_good.json`
- `vulkaninfo/generated/vulkaninfo.hpp`
Change-Id: Ib6c35389471d8cbdaa60608f76e563ad50271a53
Charles Giessen [Tue, 8 Oct 2019 16:02:17 +0000 (10:02 -0600)]
vulkaninfo: Present Surfaces now wont show duplicates
If a machine has multiple surface types that work with the
same gpu and have the same properties, vulkainfo will now
list them in a short array instead of duplicating the entire
surfaces information. To do this required being able to compare
vulkan objects, necesitating the autogeneration of comparators
for vulkan structs. This patch also refactors some of the
device creation code to better reflect the actual data
dependencies of the various vulkan objects.
files modified
- vulkaninfo/vulkaninfo.cpp
- vulkaninfo/vulkaninfo.h
- scripts/vulkaninfo_generator.py
- vulkaninfo/generated/vulkaninfo.hpp
Change-Id: Ifda51eacc3883982a6e2f7f60439827eb355c204
Charles Giessen [Mon, 14 Oct 2019 18:18:06 +0000 (12:18 -0600)]
vulkaninfo: Added asserts to check output
Several places in the output code of vulkaninfo had preconditions,
like the indent level being zero or positive, but had no asserts
checking the value. This commit adds such defensive measures, as well
as a reordering IndentIncrease to be correct in regards to keeping
indents zero or above.
files modified
- vulkaninfo/outputprinter.h
- vulkaninfo/vulkaninfo.cpp
Change-Id: Iafa03193407229d345f550c4c4c3a9dd1e235919
Jeremy Kniager [Mon, 14 Oct 2019 15:25:47 +0000 (09:25 -0600)]
cube: Revert 1.1.114 SDK workaround for vkcube
During the release of the 1.1.114 MacOS SDK a workaround
for vkcube was needed to get it functioning in time for release.
The underlying problem has since been fixed and this workaround
is not longer necessary.
Change-Id: I3ad3d1bafa44cfbc158820025bb22757d6e5683d
Charles Giessen [Fri, 11 Oct 2019 15:16:03 +0000 (09:16 -0600)]
vulkaninfo: updated json documentation
Currently, the json option doesn't specify that it only outputs for one
gpu and that it follows a schema. This rectifies that.
file changed
- vulkaninfo/vulkaninfo.cpp
Change-Id: I3af8d559b2464d7ce00ce21e58a1c3054c0740b4
Jeremy Kniager [Fri, 11 Oct 2019 15:58:21 +0000 (09:58 -0600)]
build: Fix Vulkaninfo Bundle build on MacOS
Fixes MacOS crash while building the Vulkaninfo.app bundle.
Change-Id: Ic1e3c4cef7de5d9458f4d0fc056093abb352bf1a
Charles Giessen [Mon, 7 Oct 2019 22:53:36 +0000 (16:53 -0600)]
vulkaninfo: Fix closing immediately on windows
On windows the console window will immediately close after running
vulkaninfo, this fixes it.
Change-Id: Ic5a86ffb89508d874d9609ed1b4d9222a31798c4
Charles Giessen [Tue, 8 Oct 2019 16:38:49 +0000 (10:38 -0600)]
vulkaninfo: Handle device group extension not available
Previously if the device didn't support VK_KHR_device_group vulkaninfo
would not catch it and subsequently crash. This commit adds error
checking and bool flag to GetGroupCapabilities for callers to know
if it was successful.
files modified:
- vulkaninfo/vulkaninfo.cpp
- vulkaninfo/vulkaninfo.h
Change-Id: Ie8fe9cc46ebe0fa6cae9985d89628d60ddf58cf2
Charles Giessen [Fri, 4 Oct 2019 21:02:31 +0000 (15:02 -0600)]
vulkaninfo: fix extra newlines
A slight oversight in the output meant there were extra newlines
in pNext chain traversal.
This makes sure only one newline is printer per item in the chain.
files modified:
- vulkaninfo/generated/vulkaninfo.hpp
- scripts/vulkaninfo_generator.py
Change-Id: I3b3cac55c3e90d0b3f59e70fab9c4f56473c6dd6
Charles Giessen [Tue, 13 Aug 2019 17:16:59 +0000 (11:16 -0600)]
vulkaninfo: Major Refactor
Rewrote vulkan info to use C++ and include autogen capabilities
Properties and Features are now populated based on the xml spec
Improved readability and robustness by seperating vulkan
info gathering, formatting, and printing into seperate files
Files Added:
- scripts/generate_vulkaninfo.py
- vulkaninfo/vulkaninfo.h
- vulkaninfo/vulkaninfo.cpp
- vulkaninfo/outputprinter.h
- vulkaninfo/generated/vulkaninfo.hpp
- vulkaninfo/generated/.clang-format
Files Modified:
- scripts/kvt_genvk.py
- vulkaninfo/CMakeLists.txt
- vulkaninfo/macOS/vulkaninfo.cmake
Files Removed:
- vulkaninfo/vulkaninfo.c
Change-Id: I8042a6a7949595b75f03d1f3ba48e221d2cc0e8a
Jeremy Kniager [Thu, 19 Sep 2019 17:56:15 +0000 (11:56 -0600)]
build: Update MoltenVK version in known_good.json
Updated MoltenVK version from:
v1.0.36 -> v1.0.37
Shannon McPherson [Tue, 17 Sep 2019 19:41:26 +0000 (13:41 -0600)]
build: Update known good for 1.1.123 vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `build-android/vulkan-headers_revision_android`
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.h`
- `icd/generated/vk_typemap_helper.h`
- `scripts/known_good.json`
Change-Id: Ic634680499c375fd29ee3d0816fee33aafa3d44f
Tony-LunarG [Wed, 11 Sep 2019 20:32:23 +0000 (14:32 -0600)]
cube: Handle SURFACE_LOST return code
Change-Id: I6989c7da3e36ec8531ff390ca9ee2f9710776f11
Mike Schuchardt [Thu, 12 Sep 2019 18:28:15 +0000 (11:28 -0700)]
icd: Fix power operator in VkPhysicalDeviceLimits
Two bugs here:
- ^ (xor) was being used as a power operator
- maxPerStageResources and maxDescriptorSet* limits were mistaking
footnote notation in the spec for power notation
Jeremy Kniager [Thu, 5 Sep 2019 16:28:58 +0000 (10:28 -0600)]
build: Update glslang version in known-good.json
Change-Id: If9b5814aa0b2f03ae71f23f2fbb1d152995a681b
Jeremy Kniager [Thu, 5 Sep 2019 19:36:12 +0000 (13:36 -0600)]
vulkaninfo: Fix Issue 227
Fixes issue #227 where vulkaninfo on MacOS would
seemingly repeat the same 4 formats 8 times each.
This was simply the function AppDumpSurfaceFormats listing
only the VkFormat attribute from VkSurfaceFormatKHR and not
the VkColorSpaceKHR attribute.
Change-Id: Idba81a69ef317f1d546856b7acb86e8540565d2c
Jeremy Kniager [Tue, 3 Sep 2019 19:38:52 +0000 (13:38 -0600)]
build: Fix known-good MoltenVK building
MoltenVK seems to have trouble building on the
current version of Vulkan-Headers.
Since Vulkan-Headers doesn't take very long to build and
changes often, this fix removes the reuse of the
Vulkan-Headers repo, whose version is provided by Vulkan-Tools
known-good.json, in the MoltenVK build.
It instead uses the version of Vulkan-Headers provided by
the MoltenVK known-good when building MoltenVK.
**Note:** Vulkan-Tools and other required repos are still
built with the version of Vulkan-Headers provided by
Vulkan-Tools known-good.json.
Change-Id: I1b11122cf0c6ba488acd53a35e4755f00e48376c
Charles Giessen [Mon, 12 Aug 2019 21:17:34 +0000 (15:17 -0600)]
vulkaninfo: Support for VK_EXT_full_screen_exclusive
Change-Id: Id3d0dfff6f2efff42a79630b096cdd2829d00e40
Charles Giessen [Tue, 13 Aug 2019 21:20:26 +0000 (15:20 -0600)]
vulkaninfo: support for index_type_uint8_ext
Change-Id: I649b3972774907600e24508447f19505010bcc87
Charles Giessen [Thu, 8 Aug 2019 21:53:40 +0000 (15:53 -0600)]
vulkaninfo: support VK_EXT_subgroup_size_control
Change-Id: Ib51bdff3db00a3bbc66cc2926599890f895d56c2
Shannon McPherson [Tue, 27 Aug 2019 16:23:12 +0000 (10:23 -0600)]
build: Update known good for 1.1.121 vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `build-android/vulkan-headers_revision_android`
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.h`
- `icd/generated/vk_typemap_helper.h`
- `scripts/known_good.json`
Change-Id: Id5022fa1d82ae090cd5d50e7937274e93587163e
Shannon McPherson [Tue, 20 Aug 2019 23:49:23 +0000 (17:49 -0600)]
build: Update known good for 1.1.120 vulkan header
Changes:
- Updated known good files
- Generated new files using `generate_source.py`
Updated:
- `build-android/vulkan-headers_revision_android
- `icd/generated/mock_icd.h`
- `scripts/known_good.json`
Change-Id: Ia83e6bc8acd0c54d23e97e9c645d0062014f4840
Mike Weiblen [Tue, 20 Aug 2019 21:13:05 +0000 (15:13 -0600)]
docs: Bump minimums to Ubuntu 16.04 and gcc 5.4.0
Change-Id: I58588d900c89f3247be423857e861ad278d6b9c0
Charles Giessen [Mon, 12 Aug 2019 23:04:01 +0000 (17:04 -0600)]
vulkaninfo: fix memory leaks from pNext chains
Change-Id: I99965dabaf7307e52c56f779d79f259fc379c7da
Shannon McPherson [Mon, 12 Aug 2019 16:39:11 +0000 (10:39 -0600)]
build: Update known-good for 1.1.119 header
Updated known-good and generated source code for this repository.
Modified:
- `build-android/vulkan-headers_revision_android`
- `icd/generated/mock_icd.cpp`
- `icd/generated/mock_icd.h`
- `icd/generated/vk_typemap_helper.h`
- `scripts/known_good.json`
Change-Id: I10fded5bb6c35a7fc38acdbc23d097ae762f5112
Mike Schuchardt [Mon, 1 Jul 2019 04:46:41 +0000 (21:46 -0700)]
vulkaninfo: Update output for float controls
"separate" struct members were renamed and changed from a boolean to an
enum to accommodate a wider variety of hardware implementations.
Shannon McPherson [Mon, 12 Aug 2019 23:54:57 +0000 (17:54 -0600)]
build: Update Appveyor to VS 2015
Change-Id: I67534f37232f148b955a8860d41408c0fc4da5af
Charles Giessen [Wed, 7 Aug 2019 23:19:00 +0000 (17:19 -0600)]
vulkaninfo: Support for ShaderDemoteToHelperInvocationExt
Change-Id: I5188ffd477d16a3af8d48c69dc411feee76b1f7f
Charles Giessen [Wed, 7 Aug 2019 22:57:06 +0000 (16:57 -0600)]
fixed double tab for DepthStencilResolveProperties
Change-Id: I51a1b711c3e4d79695cf79bdc162860d7b39d694
Charles Giessen [Wed, 7 Aug 2019 22:55:37 +0000 (16:55 -0600)]
Fixed double tabs in text output
Change-Id: I591906091fd39e5a44e83849cb9f2d1ae36d1ead
Charles Giessen [Wed, 7 Aug 2019 22:44:48 +0000 (16:44 -0600)]
vulkaninfo: support for texel_buffer_alingment_ext
Change-Id: I424862d61714b93462bc847c63ae95d6716da154
Lenny Komow [Mon, 5 Aug 2019 16:47:21 +0000 (10:47 -0600)]
build: Remove Windows loader build dependency
On Windows, the loader now has a dependency on the Windows Driver Kit.
In order to avoid adding that dependency here, this change includes
loader .lib files for building on Windows.
Change-Id: I3119caccf7e4e9ba0666a9ba29413137696775ec
Charles Giessen [Wed, 7 Aug 2019 23:09:17 +0000 (17:09 -0600)]
fixed FragmentShaderInterlock missing </details> for html
Change-Id: Ica0bddc06cb98507f61fe7699d1ef11e74fadfd9
Charles Giessen [Wed, 7 Aug 2019 22:34:18 +0000 (16:34 -0600)]
vulkaninfo: support for imageless_framebuffer_khr
Change-Id: Ia133befc18201c3bf05238653356cdaa0c162bf9
Charles Giessen [Mon, 5 Aug 2019 22:18:25 +0000 (16:18 -0600)]
vulkaninfo: VK_EXT_fragment_shader_interlock
Adds support for the extension
Change-Id: Ifc18acbdeae3b1b5b568e9a3ddaffb444d14ef86
Charles Giessen [Mon, 5 Aug 2019 21:30:17 +0000 (15:30 -0600)]
vulkaninfo: fix forgotten </details> tag
Fixes incorrect html output from a forgotten html closing tag.
Change-Id: I3e731dafc0b191dfaa71426a7a88b6ccd28477c2
Charles Giessen [Fri, 2 Aug 2019 21:55:55 +0000 (15:55 -0600)]
vulkaninfo: VK_KHR_uniform_buffer_standard_layout
Implements the extension in vulkaninfo
Change-Id: I67ec93c678f0537ea00222bdd35e1e18b28c85d1
Jeremy Kniager [Fri, 26 Jul 2019 20:09:46 +0000 (14:09 -0600)]
build: Update MoltenVK version in known-good.json
Updated MoltenVK version in known-good.json from
v1.0.35 -> v1.0.36
Change-Id: I1b3762d2234ee7da2acc45f081f56aa6e7cfd504
Mike Schuchardt [Fri, 26 Jul 2019 14:56:30 +0000 (07:56 -0700)]
cube: Workaround macOS cube issue
Latest version of MoltenVK behaves in an apparently non-conformant way
by not allowing some linear images to be mapped to memory with
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT. This change sidesteps the issue
by forcing the use of staging buffer for loading textures.
Shannon McPherson [Wed, 24 Jul 2019 16:08:14 +0000 (10:08 -0600)]
winrt: Correct `VulkanRT-License.txt` typo
Change-Id: I26c1fbdddc8d6f6fc344164de2cc7cfa74c08919
Mike Schuchardt [Tue, 23 Jul 2019 20:06:42 +0000 (13:06 -0700)]
doc: Update docs with codegen instructions
Mike Schuchardt [Tue, 23 Jul 2019 18:52:40 +0000 (11:52 -0700)]
CI: Add codegen consistency check
Mike Schuchardt [Tue, 23 Jul 2019 18:12:29 +0000 (11:12 -0700)]
build: CMake/GN changes for pre-generated source
Mike Schuchardt [Mon, 22 Jul 2019 23:58:50 +0000 (16:58 -0700)]
icd: Add generated source to repo
Mike Schuchardt [Mon, 22 Jul 2019 23:57:15 +0000 (16:57 -0700)]
scripts: Port codegen script from VVL
Mike Schuchardt [Mon, 22 Jul 2019 23:52:06 +0000 (16:52 -0700)]
scripts: Fix mock_icd_generator syntax warnings
Jeremy Kniager [Mon, 22 Jul 2019 15:01:52 +0000 (09:01 -0600)]
build: Update glslang commit ID in known-good
Change-Id: I7d1031909f91dc14471d41e33bf50bafffaa7c58
Mike Schuchardt [Sun, 21 Jul 2019 21:18:44 +0000 (14:18 -0700)]
scripts: Add required depth/stencil resolve props
Spec mandates that at least VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR be
supported for supportedDepthResolveModes and
supportedStencilResolveModes
Shannon McPherson [Mon, 8 Jul 2019 17:00:24 +0000 (11:00 -0600)]
build: Update known-good files for 1.1.114 header
Change-Id: I8dcbd49e7ccc07f0c891d9c303e1dc0d8445f9e8
Mike Weiblen [Tue, 16 Jul 2019 21:12:26 +0000 (15:12 -0600)]
build: Update cmake_minimum_required(VERSION 3.10.2)
Change-Id: I193d23da109a81e0b385a3d9fc54a6d266b6d026
Tony-LunarG [Tue, 2 Jul 2019 19:40:06 +0000 (13:40 -0600)]
vulkaninfo: Add descriptor indexing feats/props
Change-Id: I7863fb44fbc1e2c7f7833580799db6b8fb229afe
Jeremy Kniager [Tue, 2 Jul 2019 19:34:43 +0000 (13:34 -0600)]
docs: Improve instructions for using update_deps.
[ci skip]
Same change as KhronosGroup/Vulkan-ValidationLayers#955
Change-Id: Ifdc30a41f4d7f1e4ad9bc887df6f43f5caaa69f9
Jeremy Kniager [Tue, 2 Jul 2019 15:47:29 +0000 (09:47 -0600)]
build: Fix LunarXchange Issue 862
Modified MoltenVK build arguments for MacOS from
`MVK_LOGGING_ENABLED=0` to `MVK_CONFIG_LOG_LEVEL=1`.
This allows users to set the logging information they
want when an application is run using MoltenVK.
By default, only errors are logged.
Change-Id: I471fa28e68b5dc68b10ae17858475981158b2a86
Shannon McPherson [Mon, 1 Jul 2019 21:46:44 +0000 (15:46 -0600)]
build: Update known-good files for 1.1.113 header
Change-Id: I3151722ccb8f3c5d918db8ffd701661a33dcf3b6
Mike Weiblen [Thu, 27 Jun 2019 21:18:32 +0000 (15:18 -0600)]
cube: Fix DbgMsg() use of varargs
vprintf (not printf) must be used with va_list.
Also moved flush() outside the va_list's scope.
Change-Id: Ib82b9f7e7ec1f954619c3eadb8dcaeb08abf113a
Jeremy Kniager [Wed, 26 Jun 2019 16:55:29 +0000 (10:55 -0600)]
vulkaninfo: Add more descriptive error message
Issue #207 mentions that one of the main problems users
encounter when troubleshooting is a failure to create a
Vulkan instance, and suggests that a statement be added
to this error message that describes the most common
causes of this problem.
This commit adds this additional statement to the current
error message.
Change-Id: I2fccf00a8d9895a602fad40913f2380fc1c0a862
Shannon McPherson [Tue, 25 Jun 2019 19:08:41 +0000 (13:08 -0600)]
build: Update known-good files for 1.1.112 header
Change-Id: Ibf447e4f562d49bda5ab60b1bdf4ebf71678a6ae
Jeremy Kniager [Tue, 25 Jun 2019 15:21:08 +0000 (09:21 -0600)]
vulkaninfo: Fix issue 195
It was suggested that `maxComputeSharedMemorySize`
from VkPhysicalDeviceLimits be displayed as a decimal
instead of a hex number.
Change-Id: I4b5cb61d56adea4e4d8d33619fabc37e359b8e4a
Jeremy Kniager [Mon, 17 Jun 2019 20:04:38 +0000 (14:04 -0600)]
vulkaninfo: Fix issue 202
Vulkaninfo was replacing function `snprintf`
with function `_snprintf` on windows.
This seems to be for backwards compatiblity
with VS2013.
`_snprintf` is considered deprecated in VS2015
as `snprintf` is properly implemented.
Since we are dropping compatibility with VS2013 it
seems like this replacement should be removed.
Due to AppVeyor failing to build when this pre-processor
command is removed entirely, the command has been modified
to replace `snprintf` with `_snprintf_s`.
This command should hopefully be removed entirely in a future
commit.
Change-Id: I85f726fcb0a1cfcc902487100d35dc63d2ba00d8
Jeremy Kniager [Mon, 17 Jun 2019 15:51:13 +0000 (09:51 -0600)]
build: Update MoltenVK in known_good.json
Updated MoltenVK version in known_good.json
from 1.0.34v -> 1.0.35v
Change-Id: I3c574d22ab98fcf0e3bd0c718a1a3f5a69287b42
Tony-LunarG [Thu, 13 Jun 2019 21:32:05 +0000 (15:32 -0600)]
cube: Add subpass dependencies
Shared depth buffer and image layout transition both
need to be accounted for
Change-Id: Id26bc47798c58e4435a5585def3161105b7fffd1
Tony-LunarG [Thu, 13 Jun 2019 22:21:57 +0000 (16:21 -0600)]
cube: Fix compiler warning
Change-Id: I8a84556cf55b03cc39402067150fc86be3ed1a0a
Jeremy Kniager [Thu, 13 Jun 2019 16:19:03 +0000 (10:19 -0600)]
vulkaninfo: Fix HTML format for multi-GPU computer
Fixes an issue found where the device properties
and extensions would only be printed for the first GPU
on a system when printing in HTML format.
Change-Id: Id6812d7c6b14915afb87fdb740e8918f4609d662
Jeremy Kniager [Mon, 10 Jun 2019 20:21:20 +0000 (14:21 -0600)]
build: Update known-good files glslang commit ID
Change-Id: I5ef3ac82301d42cbdb616da4c995cf6dc53c6708
Tony-LunarG [Tue, 4 Jun 2019 20:11:43 +0000 (14:11 -0600)]
cube: Add usage message on Windows
Change-Id: Id709544863b50def407d7e18c330914bebc9c03a
Bob Ellison [Thu, 6 Jun 2019 16:26:48 +0000 (10:26 -0600)]
cmake: adjust cmake download process to match new design
Also took Karl off the list of e-mail addresses to be notified,
at his request.
Bob Ellison [Thu, 23 May 2019 17:43:54 +0000 (11:43 -0600)]
cmake: Use CMake 3.10.2 for CI
These changes ensure that the Travis and AppVeyor
builds use a known version of CMake.
Shannon McPherson [Wed, 29 May 2019 16:22:32 +0000 (10:22 -0600)]
build: Update known-good files for 1.1.108 header
Change-Id: Ifc19c0e0fcb36f9a5009a73979eb20069e9db463
Jeremy Kniager [Mon, 13 May 2019 15:23:38 +0000 (09:23 -0600)]
vulkaninfo: Run clang-format
Change-Id: I956d5777b657a25edb7f289047f320345af5cc44
Jeremy Kniager [Mon, 29 Apr 2019 22:03:56 +0000 (16:03 -0600)]
vulkaninfo: VK_KHR_surface_protected_capabilities
Added output for the following structures from
extension VK_KHR_surface_protected_capabilities:
VkSurfaceProtectedCapabilitiesKHR
Change-Id: I5fb89b8118abbdb3876463f2ff5f96c08221781b
Jeremy Kniager [Mon, 29 Apr 2019 20:38:50 +0000 (14:38 -0600)]
vulkaninfo: Add VK_EXT_host_query_reset
Added output for the following structures from
extension VK_EXT_host_query_reset:
VkPhysicalDeviceHostQueryResetFeaturesEXT
Change-Id: Ibc3dce6261ff5e46926d4f969562d377c74f23f5
Jeremy Kniager [Mon, 29 Apr 2019 20:30:06 +0000 (14:30 -0600)]
vulkaninfo: Add VK_EXT_ycbcr_image_arrays
Added output for the following structures from
extension VK_EXT_ycbcr_image_arrays:
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT
Change-Id: I0f10ae006e99fff5192729ac32bafae2d9170d0c
Bob Ellison [Wed, 8 May 2019 17:32:08 +0000 (11:32 -0600)]
update_deps: make --clean-repo switch work in all cases
--clean-repo right now will raise an exception if the repository
directory was not present. This makes it work in all cases.
Mike Schuchardt [Mon, 22 Apr 2019 18:19:54 +0000 (11:19 -0700)]
scripts: Temporary workaround for python2
Temporarily patch abc module with ABC helper class until upstream
conventions.py script stops using it.
Mike Schuchardt [Sat, 20 Apr 2019 01:09:30 +0000 (18:09 -0700)]
build: Add GN build
Add support for GN, Google's meta-build system for Ninja:
https://gn.googlesource.com/gn/
Pull BUILD.gn and script dependencies from
https://chromium.googlesource.com/angle/angle
Add build_overrides for this project to enable both standalone and
component builds using GN.
Add GN configuration to Travis CI
Shannon McPherson [Fri, 3 May 2019 20:24:00 +0000 (14:24 -0600)]
scripts: Update known good for 107 header update
Updated:
- `build-android/vulkan-headers_revision_android`
- `scripts/known_good.json`
Change-Id: Ibf9d23645407e78805b8b8192a35338452baaf18
Jason Chen [Thu, 4 Apr 2019 04:45:29 +0000 (12:45 +0800)]
Fix memory leak in `vkcube`.
Jeremy Kniager [Wed, 1 May 2019 20:32:43 +0000 (14:32 -0600)]
vulkaninfo: Fix crash at Presentable Surface
Checks to make sure surface extensions were enabled
neglected to leave important struct variables outside
the if statements.
This resulted in these variables becoming uninitialized
and causing undefined behaviour.
Change-Id: Ice27314aa1d6520fc83c14726e2075a8574ba883
Gabríel Arthúr Pétursson [Fri, 19 Apr 2019 13:35:24 +0000 (13:35 +0000)]
vulkaninfo: Check support for surface extensions before using them
Not all ICDs support all the surface extensions that vulkaninfo
enumerates.
For example, on Linux with an ICD that only support VK_KHR_xcb_surface,
vulkaninfo crashes:
Presentable Surfaces:
=====================
ERROR: VK_KHR_xlib_surface extension not enabled. vkCreateXlibSurfaceKHR not executed!
vulkaninfo/vulkaninfo.c:1427: failed with VK_ERROR_EXTENSION_NOT_PRESENT
Cody Jackson [Wed, 24 Apr 2019 18:00:17 +0000 (11:00 -0700)]
Update CMakeLists.txt
Adds Control Flow Guard compiler flag to vulkaninfo
Control Flow Guard (CG) protects against some forms of memory corruption.
See https://docs.microsoft.com/en-us/windows/desktop/secbp/control-flow-guard for details.
This compiler flag enables CFG on vulkaninfo. (CFG is already enabled on the Cube project.)
Enabling CFG is a low-risk, "set and forget" low hanging fruit for security hardening.
Jeremy Kniager [Wed, 17 Apr 2019 15:21:06 +0000 (09:21 -0600)]
known_good: Update MoltenVK known_good version ID
Updated the MoltenVK version in known_good.json to
"v1.0.34"
Change-Id: I81bfec2e80f724815c4e9576386d00a96b784a48
Jeremy Kniager [Mon, 22 Apr 2019 19:33:59 +0000 (13:33 -0600)]
test: Update cloud CI to use known_good.json
Updates to other repos can cause errors to propagate
from changes that have nothing to do with PRs on
Vulkan-Tools.
This commit changes cloud CI systems to build with
known_good.json in Vulkan-Tools so that issues
affecting other repos do not prevent PRs in Vulkan-Tools
from getting merged.
Change-Id: Iad4907c0bf07322c9b02477e09fed9fd5b72b631
Dave Airlie [Fri, 12 Apr 2019 07:04:48 +0000 (17:04 +1000)]
cube: fix scoping of some variables.
use_invalid: Using "present.pNext", which points to an out-of-scope variable "regions".
In theory these local vars are out of scope when they are used later.
Pointed out by coverity
Dave Airlie [Fri, 12 Apr 2019 06:59:23 +0000 (16:59 +1000)]
cube: remove unused validation_layer_count.
This is assigned but never used.
Pointed out by coverity.
Dave Airlie [Fri, 12 Apr 2019 06:58:03 +0000 (16:58 +1000)]
vulkaninfo: use correct type in malloc sizing.
warning: Result of 'malloc' is converted to a pointer of type 'VkPresentModeKHR', which is incompatible with sizeof operand type 'VkPresentInfoKHR'
Pointed out by coverity.
Dave Airlie [Fri, 12 Apr 2019 06:53:19 +0000 (16:53 +1000)]
vulkaninfo: handle NULL layer_name.
Earlier we check for a NULL layer name but not here.
Vulkan-Tools-sdk-1.1.101.0/vulkaninfo/vulkaninfo.c:4403: var_deref_model: Passing null pointer "layer_name" to "strcmp", which dereferences it.
Pointed out by coverity.