AMD Mesa driver ocasionally hangs
Ptyxis from gnome-nightly running on rawhide on a Renoir IGP
$ flatpak info org.gnome.Ptyxis.Devel
Ptyxis - A container oriented terminal for GNOME
ID: org.gnome.Ptyxis.Devel
Ref: app/org.gnome.Ptyxis.Devel/x86_64/master
Arch: x86_64
Branch: master
Version: 46.alpha
License: GPL-3.0-or-later
Origin: gnome-nightly
Collection: org.gnome.Nightly
Installation: user
Installed: 2.6 MB
Runtime: org.gnome.Platform/x86_64/master
Sdk: org.gnome.Sdk/x86_64/master
Commit: 85d4aa7ff1a13a8c9be0425551bcd222368c7f7c981e3c5b6e2d2a8c178d7000
Parent: 133babcd9d2843ec0e9d80edad3b9f2ed55bc5866311cd63167ea3cde5df2461
Subject: Export org.gnome.Ptyxis.Devel
Date: 2024-03-11 00:55:32 +0000
OpenGL renderer string: AMD Radeon Graphics (radeonsi, renoir, LLVM 18.1.0, DRM 3.57, 6.8.0-0.rc7.20240307git67be068d31d4.59.fc41.x86_64)
It randomly hangs. Haven't yet found a reproducer. Could be a mesa or kernel bug I suppose.
pstack of the hanged thread:
Thread 1 (LWP 68394 "ptyxis"):
#0 0x00007f2b35c4f93d in syscall () from target:/usr/lib/x86_64-linux-gnu/libc.so.6
#1 0x00007f2b18af0efa in futex_wait () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#2 0x00007f2b18b74427 in st_save_zombie_sampler_view () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#3 0x00007f2b18b9912b in st_texture_release_all_sampler_views.part () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#4 0x00007f2b18b99737 in st_delete_texture_sampler_views () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#5 0x00007f2b18b53f5f in _mesa_delete_texture_object () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#6 0x00007f2b18b5409d in _mesa_reference_texobj_ () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#7 0x00007f2b18b54547 in bind_texture_object () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#8 0x00007f2b18c4322e in _mesa_unmarshal_BindTexture () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#9 0x00007f2b18b2d381 in glthread_unmarshal_batch () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#10 0x00007f2b18b2d996 in _mesa_glthread_finish () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#11 0x00007f2b18d83c8f in _mesa_marshal_GetIntegerv () from target:/usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so
#12 0x00007f2b36561776 in gsk_gpu_clear_op_gl_command () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#13 0x00007f2b36575113 in gsk_gpu_render_pass_op_gl_command () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#14 0x00007f2b3655f03e in gsk_gl_frame_submit () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#15 0x00007f2b36574560 in gsk_gpu_renderer_render () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#16 0x00007f2b36500b6d in gsk_renderer_render () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#17 0x00007f2b362c323f in gtk_widget_render () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#18 0x00007f2b362cad49 in surface_render () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#19 0x00007f2b364587c7 in _gdk_marshal_BOOLEAN__BOXEDv () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#20 0x00007f2b36d60912 in _g_closure_invoke_va () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007f2b36d77223 in signal_emit_valist_unlocked () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007f2b36d7de31 in g_signal_emit_valist () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007f2b36d7def3 in g_signal_emit () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007f2b364e9d79 in gdk_surface_paint_on_clock () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#25 0x00007f2b36d60912 in _g_closure_invoke_va () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007f2b36d77f1f in signal_emit_valist_unlocked () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007f2b36d7de31 in g_signal_emit_valist () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007f2b36d7def3 in g_signal_emit () from target:/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#29 0x00007f2b364cf70d in _gdk_frame_clock_emit_paint () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#30 0x00007f2b364d0778 in gdk_frame_clock_paint_idle () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#31 0x00007f2b364d09d4 in gdk_frame_clock_flush_idle () from target:/usr/lib/x86_64-linux-gnu/libgtk-4.so.1
#32 0x00007f2b36e1154a in g_timeout_dispatch () from target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f2b36e0e647 in g_main_dispatch () from target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007f2b36e10767 in g_main_context_iterate_unlocked.isra () from target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007f2b36e10e23 in g_main_context_iteration () from target:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007f2b36ff5fad in g_application_run () from target:/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#37 0x00005625e51c9e17 in ?? ()
#38 0x00007f2b35b6308a in __libc_start_call_main () from target:/usr/lib/x86_64-linux-gnu/libc.so.6
#39 0x00007f2b35b6314b in __libc_start_main () from target:/usr/lib/x86_64-linux-gnu/libc.so.6
#40 0x00005625e51ca195 in ?? ()
Edited by Yanko Kaneti