Nvidia bug report:
nvidia-bug-report.log.gz (877.8 KB)
Summary:
As per title of the post, the Godot 4.0+ editor will freeze indefinitely (GUI and terminal output) on Linux using NVIDIA drivers due to a Vulkan error which may be a driver issue, a fence timeout or driver hang, I’m unsure what to describe it. The issues were reported from users with Nvidia drivers 550.X and 580.X
It can easily be reproduced by using recent Godot builds (prebuilt or built from source code), without enabling ‘Single Window Mode‘ in the Editor Settings > Interface > Editor, while using Mobile or Forward+ rendering modes, which use Vulkan on Linux. This does not occur when using Compatibility rendering mode, which uses OpenGL 3.
It can occur at any point where a window, pop-up, tooltip, an input field or similar interactable GUI object is shown or used. Some users report encountering the issue immediately, some report it happening at any point after the editor has been launched and they are interacting with the UI.
Bug report exists for Godot here: https://github.com/godotengine/godot/issues/103249
Example of reproduction scenarios:
Scenario 1:
Open a blank Godot project created with Mobile or Forward+ rendering modes, open Project Settings > Input Map tab, enable ‘Show built-in actions‘, scroll up and down for a little while - I have encountered this a couple of seconds after I start scrolling.
Scenario 2:
Open a blank Godot project created with Mobile or Forward+ rendering modes, open Project Settings > Plugins tab, click to create a new Plugin, which opens a new window. Start clicking and typing into the input fields shown, the editor will freeze a little while after, which isn’t caused by tooltips, but by the input fields for reasons unknown to me.
Scenario 3:
Open a blank Godot project created with Mobile or Forward+ rendering modes, open the Script Editor in a new floating (native) window, and a color picker, which would result in 3 floating windows. The editor should freeze completely after 10-20 seconds.
Examples of errors:
ERROR: Condition "err != VK_SUCCESS" is true. Returning: FAILED
at: fence_wait (drivers/vulkan/rendering_device_driver_vulkan.cpp:2550)
ERROR: VALIDATION - Message Id Number: -1254218959 | Message Id Name: VUID-vkResetCommandPool-commandPool-00040
vkResetCommandPool(): (VkCommandBuffer 0x556d88745970) is in use.
The Vulkan spec states: All VkCommandBuffer objects allocated from commandPool must not be in the pending state (https://docs.vulkan.org/spec/latest/chapters/cmdbuffers.html#VUID-vkResetCommandPool-commandPool-00040)
Objects - 2
Object[0] - VK_OBJECT_TYPE_COMMAND_BUFFER, Handle 93928929122672
Object[1] - VK_OBJECT_TYPE_COMMAND_POOL, Handle 45079976738857
at: _debug_messenger_callback (drivers/vulkan/rendering_context_driver_vulkan.cpp:642)
ERROR: Crashing, because abort on GPU errors is enabled.
at: _debug_messenger_callback (drivers/vulkan/rendering_context_driver_vulkan.cpp:643)
with a backtrace when using X11:
Backtrace on X11
frame #0: 0x00007ffff7c9f042 libc.so.6`__syscall_cancel_arch at syscall_cancel.S:56
frame #1: 0x00007ffff7c931ac libc.so.6`__internal_syscall_cancel(a1=<unavailable>, a2=<unavailable>, a3=<unavailable>, a4=0, a5=0, a6=0, nr=7) at cancellation.c:49:12
frame #2: 0x00007ffff7c931f4 libc.so.6`__syscall_cancel(a1=<unavailable>, a2=<unavailable>, a3=<unavailable>, a4=0, a5=0, a6=0, nr=7) at cancellation.c:75:16
frame #3: 0x00007ffff7d0d4ee libc.so.6`__GI___poll(fds=<unavailable>, nfds=<unavailable>, timeout=<unavailable>) at poll.c:29:10
frame #4: 0x00007fff65209af3 libnvidia-glcore.so.580.82.09`___lldb_unnamed_symbol36098 + 147
frame #5: 0x00007fff65634749 libnvidia-glcore.so.580.82.09`___lldb_unnamed_symbol44671 + 73
frame #6: 0x00007fff65645c3a libnvidia-glcore.so.580.82.09`___lldb_unnamed_symbol44825 + 650
frame #7: 0x00007fff65554d3e libnvidia-glcore.so.580.82.09`___lldb_unnamed_symbol43147 + 30
frame #8: 0x000055555f6a0687 godot.linuxbsd.editor.dev.x86_64`RenderingDeviceDriverVulkan::fence_wait(this=0x0000555564dac010, p_fence=FenceID @ 0x00007fffffffc3e0) at rendering_device_driver_vulkan.cpp:2549:33
frame #9: 0x00005555625af13a godot.linuxbsd.editor.dev.x86_64`RenderingDevice::_stall_for_frame(this=0x0000555564d73420, p_frame=1) at rendering_device.cpp:6561:21
frame #10: 0x00005555625adb86 godot.linuxbsd.editor.dev.x86_64`RenderingDevice::_begin_frame(this=0x0000555564d73420, p_presented=true) at rendering_device.cpp:6409:18
frame #11: 0x00005555625acc77 godot.linuxbsd.editor.dev.x86_64`RenderingDevice::swap_buffers(this=0x0000555564d73420, p_present=true) at rendering_device.cpp:6281:14
frame #12: 0x00005555627e71df godot.linuxbsd.editor.dev.x86_64`RendererCompositorRD::end_frame(this=0x00005555640e1500, p_present=true) at renderer_compositor_rd.cpp:121:35
frame #13: 0x00005555626798bb godot.linuxbsd.editor.dev.x86_64`RenderingServerDefault::_draw(this=0x000055556632b350, p_swap_buffers=true, frame_step=0.01111111111111111) at rendering_server_default.cpp:97:28
frame #14: 0x000055556267b395 godot.linuxbsd.editor.dev.x86_64`RenderingServerDefault::draw(this=0x000055556632b350, p_present=true, frame_step=0.01111111111111111) at rendering_server_default.cpp:427:8
frame #15: 0x000055555d187081 godot.linuxbsd.editor.dev.x86_64`Main::iteration() at main.cpp:4856:43
frame #16: 0x000055555d095acc godot.linuxbsd.editor.dev.x86_64`OS_LinuxBSD::run(this=0x00007fffffffc890) at os_linuxbsd.cpp:989:22
frame #17: 0x000055555d08ca02 godot.linuxbsd.editor.dev.x86_64`main(argc=4, argv=0x00007fffffffcec8) at godot_linuxbsd.cpp:85:9
frame #18: 0x00007ffff7c27675 libc.so.6`__libc_start_call_main(main=(godot.linuxbsd.editor.dev.x86_64`main at godot_linuxbsd.cpp:56:34), argc=4, argv=0x00007fffffffcec8) at libc_start_call_main.h:58:16
frame #19: 0x00007ffff7c27729 libc.so.6`__libc_start_main_impl(main=(godot.linuxbsd.editor.dev.x86_64`main at godot_linuxbsd.cpp:56:34), argc=4, argv=0x00007fffffffcec8, init=<unavailable>, fini=<unavailable>, rtld_fini=<unavailable>, stack_end=0x00007fffffffceb8) at libc-start.c:360:3
frame #20: 0x000055555d08c7a5 godot.linuxbsd.editor.dev.x86_64`_start + 37
And my GDB output after the editor freezes:
GDB output of all threads
Registered pretty printers for UE4 classes
Python Exception <class 'AttributeError'>: module 'gdb' has no attribute 'printing'
/home/alextec/.gdbinit:13: Error in sourced command file:
Error occurred in Python: module 'gdb' has no attribute 'printing'
[New LWP 2263877]
[New LWP 2263856]
[New LWP 2263852]
[New LWP 2263851]
[New LWP 2263849]
[New LWP 2263844]
[New LWP 2263843]
[New LWP 2263842]
[New LWP 2263841]
[New LWP 2263835]
[New LWP 2263834]
[New LWP 2263824]
[New LWP 2263823]
[New LWP 2263819]
[New LWP 2263818]
[New LWP 2263817]
[New LWP 2263816]
[New LWP 2263815]
[New LWP 2263814]
[New LWP 2263813]
[New LWP 2263812]
[New LWP 2263811]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/x86_64-linux-gnu/libthread_db.so.1".
__GI___ioctl (fd=20, request=3224397002) at ../sysdeps/unix/sysv/linux/ioctl.c:36
warning: 36 ../sysdeps/unix/sysv/linux/ioctl.c: No such file or directory
Thread 23 (Thread 0x7f2631bff6c0 (LWP 2263811) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf045dd0, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf045dd0, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf045dd0, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf045db0, mutex=0x5647bf045d88, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf045db0, mutex=0x5647bf045d88) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bcd40d0b in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 22 (Thread 0x7f26313fe6c0 (LWP 2263812) "WorkerThread 0"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12eba4, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12eba4, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12eba4, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12eb80, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12eb80, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 21 (Thread 0x7f2630bfd6c0 (LWP 2263813) "WorkerThread 1"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ec08, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ec08, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ec08, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ebe8, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ebe8, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 20 (Thread 0x7f26303fc6c0 (LWP 2263814) "WorkerThread 2"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ec74, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ec74, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ec74, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ec50, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ec50, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 19 (Thread 0x7f262fbfb6c0 (LWP 2263815) "WorkerThread 3"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ecd8, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ecd8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ecd8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ecb8, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ecb8, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 18 (Thread 0x7f262f3fa6c0 (LWP 2263816) "WorkerThread 4"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ed40, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ed40, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ed40, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ed20, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ed20, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 17 (Thread 0x7f262ebf96c0 (LWP 2263817) "WorkerThread 5"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12eda8, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12eda8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12eda8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ed88, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ed88, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 16 (Thread 0x7f262e3f86c0 (LWP 2263818) "WorkerThread 6"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ee14, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ee14, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ee14, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12edf0, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12edf0, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 15 (Thread 0x7f262dbf76c0 (LWP 2263819) "WorkerThread 7"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647bf12ee7c, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647bf12ee7c, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647bf12ee7c, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647bf12ee58, mutex=0x5647bf047808, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647bf12ee58, mutex=0x5647bf047808) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647bd25aadc in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 14 (Thread 0x7f260deff6c0 (LWP 2263823) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x7f25f0000db0, expected=0, op=<optimized out>, abstime=0x7f260defdcf0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x7f25f0000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f260defdcf0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f25f0000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f260defdcf0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92f5d in __pthread_cond_wait_common (cond=0x7f25f0000d90, mutex=0x5647bfa64d30, clockid=0, abstime=0x7f260defdcf0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_timedwait64 (cond=0x7f25f0000d90, mutex=0x5647bfa64d30, abstime=0x7f260defdcf0) at ./nptl/pthread_cond_wait.c:478
#7 0x00007f25fea075ac in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#8 0x00007f25fee520b1 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#9 0x00007f25fea07764 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 13 (Thread 0x7f260d6fe6c0 (LWP 2263824) "[vkcf] Analysis"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x7f25e8000db4, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x7f25e8000db4, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f25e8000db4, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x7f25e8000d90, mutex=0x5647bfbdbd00, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x7f25e8000d90, mutex=0x5647bfbdbd00) at ./nptl/pthread_cond_wait.c:453
#7 0x00007f25fea0754c in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#8 0x00007f25fee58e1e in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#9 0x00007f25fea07764 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 12 (Thread 0x7f260cd1d6c0 (LWP 2263834) "[vkrt] Analysis"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x7f25ec000db0, expected=0, op=<optimized out>, abstime=0x7f260cd1bd20, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x7f25ec000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f260cd1bd20, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f25ec000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f260cd1bd20, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92f5d in __pthread_cond_wait_common (cond=0x7f25ec000d90, mutex=0x5647bfcbd3f0, clockid=0, abstime=0x7f260cd1bd20) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_timedwait64 (cond=0x7f25ec000d90, mutex=0x5647bfcbd3f0, abstime=0x7f260cd1bd20) at ./nptl/pthread_cond_wait.c:478
#7 0x00007f25fea075ac in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#8 0x00007f25fee6bf42 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#9 0x00007f25fea07764 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 11 (Thread 0x7f25f99ff6c0 (LWP 2263835) "[vkps] Update"):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x7f25e0000e04, expected=0, op=<optimized out>, abstime=0x7f25f99fdd10, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x7f25e0000e04, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f25f99fdd10, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f25e0000e04, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f25f99fdd10, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92f5d in __pthread_cond_wait_common (cond=0x7f25e0000de0, mutex=0x5647bfcbd7b0, clockid=0, abstime=0x7f25f99fdd10) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_timedwait64 (cond=0x7f25e0000de0, mutex=0x5647bfcbd7b0, abstime=0x7f25f99fdd10) at ./nptl/pthread_cond_wait.c:478
#7 0x00007f25fea075ac in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#8 0x00007f25fee390dd in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#9 0x00007f25fea07764 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 10 (Thread 0x7f25f8d1e6c0 (LWP 2263841) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=a3@entry=0, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x7f25e4000db0, expected=0, op=<optimized out>, abstime=0x7f25f8d1cc30, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x7f25e4000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f25f8d1cc30, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f25e4000db0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x7f25f8d1cc30, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92f5d in __pthread_cond_wait_common (cond=0x7f25e4000d90, mutex=0x5647bfa1b3e0, clockid=0, abstime=0x7f25f8d1cc30) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_timedwait64 (cond=0x7f25e4000d90, mutex=0x5647bfa1b3e0, abstime=0x7f25f8d1cc30) at ./nptl/pthread_cond_wait.c:478
#7 0x00007f25fea075ac in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#8 0x00007f25fef7d299 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#9 0x00007f25fef66ff6 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#10 0x00007f25fea07764 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#11 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#12 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 9 (Thread 0x7f25f7e2d6c0 (LWP 2263842) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=139801049349248, a6=a6@entry=0, nr=270) at ./nptl/cancellation.c:49
#2 0x00007f2632a902fd in __syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=139801049349248, a6=a6@entry=0, nr=270) at ./nptl/cancellation.c:75
#3 0x00007f2632b0ec19 in __GI___select (nfds=<optimized out>, readfds=<optimized out>, writefds=<optimized out>, exceptfds=<optimized out>, timeout=0x7f25f7e2bcd0) at ../sysdeps/unix/sysv/linux/select.c:69
#4 0x00005647b7e8e106 in ?? ()
#5 0x00005647b7e903a0 in ?? ()
#6 0x00005647bcbecb25 in ?? ()
#7 0x00005647bd5e4994 in ?? ()
#8 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#9 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 8 (Thread 0x7f25f6dff6c0 (LWP 2263843) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=a1@entry=0, a2=a2@entry=0, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=0, nr=230) at ./nptl/cancellation.c:49
#2 0x00007f2632adc6ba in __GI___clock_nanosleep (clock_id=<optimized out>, clock_id@entry=0, flags=flags@entry=0, req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:48
#3 0x00007f2632ae7a93 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#4 0x00005647b95fd358 in ?? ()
#5 0x00005647b7e7e8f5 in ?? ()
#6 0x00005647bcbecb25 in ?? ()
#7 0x00005647bd5e4994 in ?? ()
#8 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#9 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 7 (Thread 0x7f25f65fe6c0 (LWP 2263844) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=a1@entry=0, a2=a2@entry=0, a3=a3@entry=139801023990800, a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=0, nr=230) at ./nptl/cancellation.c:49
#2 0x00007f2632adc6ba in __GI___clock_nanosleep (clock_id=<optimized out>, clock_id@entry=0, flags=flags@entry=0, req=req@entry=0x7f25f65fcc10, rem=rem@entry=0x0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:48
#3 0x00007f2632ae7a93 in __GI___nanosleep (req=req@entry=0x7f25f65fcc10, rem=rem@entry=0x0) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#4 0x00007f2632b10db3 in usleep (useconds=<optimized out>) at ../sysdeps/posix/usleep.c:31
#5 0x00005647b7e82856 in ?? ()
#6 0x00005647bcbecb25 in ?? ()
#7 0x00005647bd5e4994 in ?? ()
#8 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#9 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 6 (Thread 0x7f25cfbff6c0 (LWP 2263849) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=a1@entry=0, a2=a2@entry=0, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=0, nr=230) at ./nptl/cancellation.c:49
#2 0x00007f2632adc6ba in __GI___clock_nanosleep (clock_id=<optimized out>, clock_id@entry=0, flags=flags@entry=0, req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:48
#3 0x00007f2632ae7a93 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#4 0x00005647b95fd358 in ?? ()
#5 0x00005647b96325a3 in ?? ()
#6 0x00005647bcbecb25 in ?? ()
#7 0x00005647bd5e4994 in ?? ()
#8 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#9 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 5 (Thread 0x7f25cf1fe6c0 (LWP 2263851) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647c46b2118, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647c46b2118, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647c46b2118, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647c46b20f8, mutex=0x5647c46b20d0, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647c46b20f8, mutex=0x5647c46b20d0) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647b81fad1d in ?? ()
#8 0x00005647bd5e4994 in ?? ()
#9 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#10 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 4 (Thread 0x7f25c75686c0 (LWP 2263852) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=a1@entry=0, a2=a2@entry=0, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=0, nr=230) at ./nptl/cancellation.c:49
#2 0x00007f2632adc6ba in __GI___clock_nanosleep (clock_id=<optimized out>, clock_id@entry=0, flags=flags@entry=0, req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:48
#3 0x00007f2632ae7a93 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25
#4 0x00005647b95fd358 in ?? ()
#5 0x00005647b9850bd6 in ?? ()
#6 0x00005647bcbecb25 in ?? ()
#7 0x00005647bd5e4994 in ?? ()
#8 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#9 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 3 (Thread 0x7f25c6d676c0 (LWP 2263856) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647cfa9baf8, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647cfa9baf8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647cfa9baf8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647cfa9bad8, mutex=0x5647cfa9bab0, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647cfa9bad8, mutex=0x5647cfa9bab0) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647ba62c37b in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 2 (Thread 0x7f25c65666c0 (LWP 2263877) "godot.linuxbsd."):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x00007f2632a902b8 in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at ./nptl/cancellation.c:49
#2 0x00007f2632a908dc in __futex_abstimed_wait_common64 (private=0, futex_word=0x5647c5b10c48, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5647c5b10c48, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87
#4 0x00007f2632a9093b in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5647c5b10c48, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x00007f2632a92d98 in __pthread_cond_wait_common (cond=0x5647c5b10c28, mutex=0x5647c5b10c00, clockid=0, abstime=0x0) at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=0x5647c5b10c28, mutex=0x5647c5b10c00) at ./nptl/pthread_cond_wait.c:453
#7 0x00005647ba0b263b in ?? ()
#8 0x00005647bcbecb25 in ?? ()
#9 0x00005647bd5e4994 in ?? ()
#10 0x00007f2632a937db in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:448
#11 0x00007f2632b111f8 in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Thread 1 (Thread 0x7f2632c3d840 (LWP 2263808) "godot.linuxbsd."):
#0 __GI___ioctl (fd=20, request=3224397002) at ../sysdeps/unix/sysv/linux/ioctl.c:36
#1 0x00007f262d008a10 in drmIoctl () from /usr/lib/x86_64-linux-gnu/libdrm.so.2
#2 0x00007f262d00d05c in drmSyncobjTimelineWait () from /usr/lib/x86_64-linux-gnu/libdrm.so.2
#3 0x00007f25fea1518d in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#4 0x00007f262c0be35c in ?? () from /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.0
#5 0x00007f25fed2395b in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#6 0x00007f25fefab820 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.580.82.07
#7 0x00005647b968eac4 in ?? ()
#8 0x00005647bc25d351 in ?? ()
#9 0x00005647bc4e4d21 in ?? ()
#10 0x00005647bc206a62 in ?? ()
#11 0x00005647bc3c3e1f in ?? ()
#12 0x00005647b7f28f27 in ?? ()
#13 0x00005647b7e6c936 in ?? ()
#14 0x00005647b7e82ca4 in ?? ()
#15 0x00007f2632a29f68 in __libc_start_call_main (main=main@entry=0x5647b7e82b70, argc=argc@entry=4, argv=argv@entry=0x7ffe33a788f8) at ../sysdeps/nptl/libc_start_call_main.h:58
#16 0x00007f2632a2a025 in __libc_start_main_impl (main=0x5647b7e82b70, argc=4, argv=0x7ffe33a788f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe33a788e8) at ../csu/libc-start.c:360
#17 0x00005647b7e6a5a1 in ?? ()
Id Target Id Frame
* 1 Thread 0x7f2632c3d840 (LWP 2263808) "godot.linuxbsd." __GI___ioctl (fd=20, request=3224397002) at ../sysdeps/unix/sysv/linux/ioctl.c:36
2 Thread 0x7f25c65666c0 (LWP 2263877) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
3 Thread 0x7f25c6d676c0 (LWP 2263856) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
4 Thread 0x7f25c75686c0 (LWP 2263852) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
5 Thread 0x7f25cf1fe6c0 (LWP 2263851) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
6 Thread 0x7f25cfbff6c0 (LWP 2263849) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
7 Thread 0x7f25f65fe6c0 (LWP 2263844) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
8 Thread 0x7f25f6dff6c0 (LWP 2263843) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
9 Thread 0x7f25f7e2d6c0 (LWP 2263842) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
10 Thread 0x7f25f8d1e6c0 (LWP 2263841) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
11 Thread 0x7f25f99ff6c0 (LWP 2263835) "[vkps] Update" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
12 Thread 0x7f260cd1d6c0 (LWP 2263834) "[vkrt] Analysis" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
13 Thread 0x7f260d6fe6c0 (LWP 2263824) "[vkcf] Analysis" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
14 Thread 0x7f260deff6c0 (LWP 2263823) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
15 Thread 0x7f262dbf76c0 (LWP 2263819) "WorkerThread 7" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
16 Thread 0x7f262e3f86c0 (LWP 2263818) "WorkerThread 6" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
17 Thread 0x7f262ebf96c0 (LWP 2263817) "WorkerThread 5" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
18 Thread 0x7f262f3fa6c0 (LWP 2263816) "WorkerThread 4" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
19 Thread 0x7f262fbfb6c0 (LWP 2263815) "WorkerThread 3" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
20 Thread 0x7f26303fc6c0 (LWP 2263814) "WorkerThread 2" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
21 Thread 0x7f2630bfd6c0 (LWP 2263813) "WorkerThread 1" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
22 Thread 0x7f26313fe6c0 (LWP 2263812) "WorkerThread 0" __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
23 Thread 0x7f2631bff6c0 (LWP 2263811) "godot.linuxbsd." __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
[Inferior 1 (process 2263808) detached]
created using gdb -p {godot pid} -batch -ex "thread apply all bt" -ex "info threads" -ex "call (void)fflush(stdout)"
Additionally, modifying the Error RenderingDeviceDriverVulkan::fence_wait(FenceID p_fence) function in Godot’s drivers/vulkan/rendering_device_driver_vulkan.cppfile to the following:
Error RenderingDeviceDriverVulkan::fence_wait(FenceID p_fence) {
Fence *fence = (Fence *)(p_fence.id);
VkResult fence_status = vkGetFenceStatus(vk_device, fence->vk_fence);
// EDIT STARTS
if (fence_status == VK_NOT_READY) {
uint64_t timeout_ns = 100000000ULL;
VkResult err = vkWaitForFences(vk_device, 1, &fence->vk_fence, VK_TRUE, timeout_ns);
if (err == VK_TIMEOUT) {
WARN_PRINT("Vulkan fence timeout - driver hang detected");
return FAILED;
}
ERR_FAIL_COND_V(err != VK_SUCCESS, FAILED);
// EDIT ENDS
}
VkResult err = vkResetFences(vk_device, 1, &fence->vk_fence);
ERR_FAIL_COND_V(err != VK_SUCCESS, FAILED);
if (fence->queue_signaled_from != nullptr) {
// Release all semaphores that the command queue associated to the fence waited on the last time it was submitted.
LocalVector<Pair<Fence *, uint32_t>> &pairs = fence->queue_signaled_from->image_semaphores_for_fences;
uint32_t i = 0;
while (i < pairs.size()) {
if (pairs[i].first == fence) {
_release_image_semaphore(fence->queue_signaled_from, pairs[i].second, true);
fence->queue_signaled_from->free_image_semaphores.push_back(pairs[i].second);
pairs.remove_at(i);
} else {
i++;
}
}
fence->queue_signaled_from = nullptr;
}
return OK;
}
will then output the following warnings as soon as the editor freezes, every 100s:
WARNING: Vulkan fence timeout - driver hang detected
at: fence_wait (drivers/vulkan/rendering_device_driver_vulkan.cpp:2755)
WARNING: Vulkan fence timeout - driver hang detected
at: fence_wait (drivers/vulkan/rendering_device_driver_vulkan.cpp:2755)
WARNING: Vulkan fence timeout - driver hang detected
at: fence_wait (drivers/vulkan/rendering_device_driver_vulkan.cpp:2755)
The editor is still polling even while frozen, can be verified using strace -p {godot pid}:
strace: Process 2231007 attached
restart_syscall(<... resuming interrupted poll ...>) = 0
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 0 (Timeout)
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 0 (Timeout)
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 0 (Timeout)
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 0 (Timeout)
poll([{fd=47, events=POLLIN|POLLPRI}], 1, 10) = 1 ([{fd=47, revents=POLLIN|POLLPRI}])
I have also tried to profile the Vulkan API calls using NVIDIA Nsight Systems, however it crashes on the splash screen shortly after the project is loaded, which results in more of those WARNING: Vulkan fence timeout - driver hang detected errors if the previously-mentioned modification to the code is used.
If you think information from the nsight output is useful, I’ve attached the following .zip file which contains the .qdproj, the Analysis and Diagnostic summaries, the report and the sqlite report database:
godot-nsightsystems.zip (2.4 MB)
System information
Operating System: Debian GNU/Linux 13
KDE Plasma Version: 6.5.3
KDE Frameworks Version: 6.20.0
Qt Version: 6.9.2
Kernel Version: 6.16.12+deb14+1-amd64 (64-bit)
Graphics Platform: Wayland
Processors: 8 × Intel® Core™ i7-2600 CPU @ 3.40GHz
Memory: 34 GB of RAM (33.6 GB usable)
Graphics Processor: NVIDIA GeForce GTX 1650
Manufacturer: Hewlett-Packard
Product Name: HP Compaq 8200 Elite SFF PC
Nvidia driver: 580.82.07
If there’s anything else I should provide or try, let me know.