Crash on Replay
darksylinc opened this issue · 1 comments
darksylinc commented
Description
Capturing a Godot project from latest master branch on Linux succeeds and has no validation errors; but replay crashes RenderDoc.
Steps to reproduce
- Load the capture I am attaching
- Crashes with the following callstack:
1 fill_sampler_stage lvp_execute.c 1116 0x7fff9126fae8
2 handle_descriptor lvp_execute.c 1235 0x7fff91270383
3 handle_set_stage lvp_execute.c 1268 0x7fff91270555
4 handle_descriptor_sets lvp_execute.c 1350 0x7fff91270b9c
5 lvp_execute_cmd_buffer lvp_execute.c 4039 0x7fff9127c376
6 lvp_execute_cmds lvp_execute.c 4337 0x7fff9127cdd0
7 lvp_queue_submit lvp_device.c 1520 0x7fff912634d8
8 vk_queue_submit_final vk_queue.c 377 0x7fff91346688
9 vk_queue_submit_thread_func vk_queue.c 490 0x7fff91346af0
10 impl_thrd_routine threads_posix.c 67 0x7fff91326616
11 start_thread pthread_create.c 477 0x7ffff7f6d609
12 clone clone.S 95 0x7fffefb2d353
ss = nullptr
stage = MESA_SHADER_VERTEX (0)
ss_idx = 10
array_idx = 0
dyn_info->stage[stage].sampler_count = 0
state->ss_dirty[p_stage] = 1
descriptor = {
{
sampler = 0x0,
sampler_view = 0x0
},
"image_view ="{
resource = 0x0,
"format = PIPE_FORMAT_NONE",
access = 0,
shader_access = 0,
"u ="{
"tex ="{
first_layer = 0,
last_layer = 0,
level = 0
},
"buf ="{
offset = 0,
size = 0
}
}
},
"ssbo ="{
buffer = 0x0,
buffer_offset = 0,
buffer_size = 0
},
"ubo ="{
buffer = 0x0,
buffer_offset = 0,
buffer_size = 0,
user_buffer = 0x0
},
uniform = 0x0
}
bindings ={
descriptor_index = 12,
"type = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER",
array_size = 1,
"valid = true",
dynamic_index = 0,
"stage ="{
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
},
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
},
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
},
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
},
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
},
{
const_buffer_index = -1,
shader_buffer_index = -1,
sampler_index = 10,
sampler_view_index = 10,
image_index = -1,
uniform_block_index = -1,
uniform_block_offset = 0
}
},
immutable_samplers = 0x0
}
Repro:
RenderDoc.zip
If you think you need access to the original app to capture it, I can arrange that (it takes me time to setup the demo)
Environment
- RenderDoc version: 1.30 (also master c4e3f96)
- Operating System: Xubuntu 20.04 LTS
- Graphics API: Vulkan
Driver: RADV
AMD Radeon RX 6800 XT (navi21, LLVM 15.0.7, DRM 3.46, 5.18.11+)
Mesa 23.2.1 refresh - kisak-mesa PPA
App passes validation and presents correctly.
darksylinc commented
AHHHH FOR THE LOVE OF GOD.
By my own mistake the system picked up lavapipe (non-conformant SW Vulkan implementation) instead of my HW.
The problem goes away when using real Vulkan HW.
Closing this ticket.