17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-09 03:58:55 +01:00

Name the buffer or image a Vulkan device fault hit in the device-lost report

This commit is contained in:
2026-10-29 18:04:38 +01:00
parent 91c6324965
commit 325be54b2c
4 changed files with 224 additions and 0 deletions

View File

@@ -10,6 +10,7 @@ http://mozilla.org/MPL/2.0/.
#include "stdafx.h"
#include "rendering/vulkan14/vulkan14device.h"
#include "rendering/vulkan14/vulkan14instance.h"
#include "rendering/vulkan14/vulkan14memory.h"
#include "utilities/Globals.h"
#include <cinttypes>
@@ -549,6 +550,14 @@ std::string device::fault_report() const
{
report += " (" + hex(lower) + " to " + hex(lower + precision - 1) + ")";
}
// what the memory there is, for the reads and writes (not the addresses of the code of the shaders)
if ((address.addressType == VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT) || (address.addressType == VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT))
{
if (auto const holder{address_registry::describe(lower, lower + precision - 1)}; false == holder.empty())
{
report += ": " + holder;
}
}
}
for (auto const &entry : vendor)
{