protonscr

Saints Row: The Third apitrace validation errors.

dxvkclosed
doitsujin/dxvk#3157 · opened 2022-12-30 by Blisto91 · updated 2024-10-30 · 2 comments · github
BBlisto91 2022-12-30 github

These validation errors are spammed when replaying the SR3 trace i made for https://github.com/doitsujin/dxvk/issues/2473

err:   VUID-vkCmdDraw-None-02699: 
err:   Validation Error: [ VUID-vkCmdDraw-None-02699 ] Object 0: handle = 0x5d64b400000005d5, type = VK_OBJECT_TYPE_DESCRIPTOR_SET; | MessageID = 0x1608dec0 | Descriptor set VkDescriptorSet 0x5d64b400000005d5[] encountered the following validation error at vkCmdDraw time: Image layout specified at vkUpdateDescriptorSet* or vkCmdPushDescriptorSet* time doesn't match actual image layout at time descriptor is used. See previous error callback for specific details. The Vulkan spec states: Descriptors in each bound descriptor set, specified via vkCmdBindDescriptorSets, must be valid if they are statically used by the VkPipeline bound to the pipeline bind point used by this command (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDraw-None-02699)
err:   VUID-VkDescriptorImageInfo-imageLayout-00344: 
err:   Validation Error: [ VUID-VkDescriptorImageInfo-imageLayout-00344 ] Object 0: handle = 0x7ff680069f70, type = VK_OBJECT_TYPE_COMMAND_BUFFER; | MessageID = 0xde55a405 | vkCmdDraw: Cannot use VkImage 0x44349c0000000060[] (layer=0 mip=2) with specific layout VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL that doesn't match the previous known layout VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL. The Vulkan spec states: imageLayout must match the actual VkImageLayout of each subresource accessible from imageView at the time this descriptor is accessed as defined by the image layout matching rules (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkDescriptorImageInfo-imageLayout-00344)

Trace:
https://mega.nz/file/50IyWCKL#fqBnmnS8qLsH_g6zhlKbGIpCt56ClIP9voICctyJrtE

Log (not full replay):
SaintsRowTheThird_d3d9.log

Edit: Original trace replaced with a new shorter one

KK0bin maintainer 2022-12-30 github

There's also those on Nvidia:

VUID-VkMemoryDedicatedAllocateInfo-image-01433(ERROR / SPEC): msgNum: -729840970 - Validation Error: [ VUID-VkMemoryDedicatedAllocateInfo-image-01433 ] Object 0: handle = 0x7e839590, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xd47f82b6 | vkAllocateMemory: Allocation Size (2798592) needs to be equal to VkImage VkImage 0xca0b160000000085[] VkMemoryRequirements::size (2798080) The Vulkan spec states: If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image (https://www.khronos.org/registry/vulkan/specs/1.3-khr-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01433)
    Objects: 1
        [0] 0x7e839590, type: 3, name: NULL
VUID-VkMemoryDedicatedAllocateInfo-image-01433(ERROR / SPEC): msgNum: -729840970 - Validation Error: [ VUID-VkMemoryDedicatedAllocateInfo-image-01433 ] Object 0: handle = 0x7e839590, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xd47f82b6 | vkAllocateMemory: Allocation Size (2798592) needs to be equal to VkImage VkImage 0xe0601f000000008d[] VkMemoryRequirements::size (2798080) The Vulkan spec states: If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image (https://www.khronos.org/registry/vulkan/specs/1.3-khr-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01433)
    Objects: 1
        [0] 0x7e839590, type: 3, name: NULL
VUID-VkMemoryDedicatedAllocateInfo-image-01433(ERROR / SPEC): msgNum: -729840970 - Validation Error: [ VUID-VkMemoryDedicatedAllocateInfo-image-01433 ] Object 0: handle = 0x7e839590, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xd47f82b6 | vkAllocateMemory: Allocation Size (11187200) needs to be equal to VkImage VkImage 0x8f5f070000000095[] VkMemoryRequirements::size (11186688) The Vulkan spec states: If image is not VK_NULL_HANDLE, VkMemoryAllocateInfo::allocationSize must equal the VkMemoryRequirements::size of the image (https://www.khronos.org/registry/vulkan/specs/1.3-khr-extensions/html/vkspec.html#VUID-VkMemoryDedicatedAllocateInfo-image-01433)
    Objects: 1
        [0] 0x7e839590, type: 3, name: NULL

I also don't get the layout errors on Nvidia, so this might be a Meta pass.

EDIT: The validation errors in this comment should be fixed now.

BBlisto91 2023-07-22 github

Original validation error can still be seen on latest master with latest radv git. Now along with a new one that is spammed quite alot

err:   VUID-vkCmdDrawIndexed-None-07834: 
err:   Validation Error: [ VUID-vkCmdDrawIndexed-None-07834 ] Object 0: handle = 0x7f4388003840, type = VK_OBJECT_TYPE_COMMAND_BUFFER; Object 1: handle = 0x1a20860000009ef2, type = VK_OBJECT_TYPE_PIPELINE; | MessageID = 0x5386900c | vkCmdDrawIndexed: VK_DYNAMIC_STATE_DEPTH_BIAS state not set for this command buffer. The Vulkan spec states: If the bound graphics pipeline state was created with the VK_DYNAMIC_STATE_DEPTH_BIAS dynamic state enabled then vkCmdSetDepthBias must have been called in the current command buffer prior to this drawing command (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkCmdDrawIndexed-None-07834)

SaintsRowTheThird_d3d9.tar.gz

Upstream links