summaryrefslogtreecommitdiffstats
path: root/src/gui/rhi/qrhivulkan.cpp
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2023-07-19 11:10:28 +0200
committerLaszlo Agocs <laszlo.agocs@qt.io>2023-07-31 12:38:40 +0200
commitf9d473ac726fe012fe05a9e6f7502ca50c2245e5 (patch)
tree164add6c189b5d4382bc2740742a4e20b836a69a /src/gui/rhi/qrhivulkan.cpp
parent108b1014415a491cb0abb58c04a28a5c691085a1 (diff)
rhi: vulkan: use the clamped api version for vma
caps.apiVersion is inst->apiVersion() limited by the version the physical device reports. Therefore, use caps.apiVersion when setting up the memory allocator, like it is done everywhere else. This is expected prevent vma init failures on lavapipe in some Linux distros. Pick-to: 6.6 6.5 Change-Id: I4e693820c95a5e0174846afb20e42aadd56034d6 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/gui/rhi/qrhivulkan.cpp')
-rw-r--r--src/gui/rhi/qrhivulkan.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/gui/rhi/qrhivulkan.cpp b/src/gui/rhi/qrhivulkan.cpp
index 7eb460c1a2..c69c1fa7b2 100644
--- a/src/gui/rhi/qrhivulkan.cpp
+++ b/src/gui/rhi/qrhivulkan.cpp
@@ -771,12 +771,9 @@ bool QRhiVulkan::create(QRhi::Flags flags)
allocatorInfo.device = dev;
allocatorInfo.pVulkanFunctions = &funcs;
allocatorInfo.instance = inst->vkInstance();
- const QVersionNumber apiVer = inst->apiVersion();
- if (!apiVer.isNull()) {
- allocatorInfo.vulkanApiVersion = VK_MAKE_VERSION(apiVer.majorVersion(),
- apiVer.minorVersion(),
- apiVer.microVersion());
- }
+ allocatorInfo.vulkanApiVersion = VK_MAKE_VERSION(caps.apiVersion.majorVersion(),
+ caps.apiVersion.minorVersion(),
+ caps.apiVersion.microVersion());
VmaAllocator vmaallocator;
VkResult err = vmaCreateAllocator(&allocatorInfo, &vmaallocator);
if (err != VK_SUCCESS) {