Bug 475941

Summary: Game randomly freezes when a player is eliminated.
Product: [Applications] ksirk Reporter: Jeff Laramie <JALaramie>
Component: generalAssignee: Nemanja Hirsl <nemhirsl>
Status: REPORTED ---    
Severity: normal CC: aacid, kde-games-bugs-null
Priority: NOR    
Version First Reported In: 20.12.2   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Jeff Laramie 2023-10-21 22:28:33 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***


STEPS TO REPRODUCE
1.  While playing against computer opponents, the game will randomly freeze when a player is eliminated. This happens both when the player is eliminated by me or by a computerized opponent. I'm running a fully updated Mageia 8 system. KRisk version shows as 20.12.0 which was not an option in the Version menu.
2. 
3. 

OBSERVED RESULT


EXPECTED RESULT


SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 5.15.2

ADDITIONAL INFORMATION
Comment 1 Albert Astals Cid 2023-10-22 22:59:52 UTC
Do you know the basics on how to use a debugger?
Comment 2 Jeff Laramie 2023-10-23 09:18:18 UTC
On 10/22/23 18:59, Albert Astals Cid wrote:
> https://bugs.kde.org/show_bug.cgi?id=475941
>
> Albert Astals Cid <aacid@kde.org> changed:
>
>             What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                   CC|                            |aacid@kde.org
>
> --- Comment #1 from Albert Astals Cid <aacid@kde.org> ---
> Do you know the basics on how to use a debugger?
>
I can't remember using one before, but I'm fairly knowledgeable about 
computers in general and could figure it out with some help to get me 
started.
Comment 3 Albert Astals Cid 2023-10-23 22:02:07 UTC
So install gdb, also install the ksirk debug symbols for your distrobution hoping mageia has those https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports may have some info (may also be out of date, check your distro documentation or help channels)

Open a terminal and write
  gdb ksirk
press Enter, 
type
  run
press Enter
use the app as normal. Once it freezes, go to that terminal and press Ctrl+C
after that type
  thread apply all bt
and paste its output here
Comment 4 Jeff Laramie 2023-10-23 22:08:14 UTC
(In reply to Albert Astals Cid from comment #3)
> So install gdb, also install the ksirk debug symbols for your distrobution
> hoping mageia has those
> https://community.kde.org/Guidelines_and_HOWTOs/Debugging/
> How_to_create_useful_crash_reports may have some info (may also be out of
> date, check your distro documentation or help channels)
> 
> Open a terminal and write
>   gdb ksirk
> press Enter, 
> type
>   run
> press Enter
> use the app as normal. Once it freezes, go to that terminal and press Ctrl+C
> after that type
>   thread apply all bt
> and paste its output here

OK, I can handle that. I'll report back when I have something.
Comment 5 Jeff Laramie 2023-10-28 10:28:55 UTC
This is what I got:

[Thread 0x7fffdd638640 (LWP 27982) exited]
[New Thread 0x7fffdd638640 (LWP 27984)]
[Thread 0x7fffdd638640 (LWP 27984) exited]
[New Thread 0x7fffdd638640 (LWP 27985)]
QLayout: Attempting to add QLayout "" to Ksirk::KRightDialog "", which already has a layout
QLayout: Attempting to add QLayout "" to Ksirk::KRightDialog "", which already has a layout
org.kde.games.private.kgame: : not enough players, PAUSING game

org.kde.games.private.kgame: incorrect message id 20  - emit anyway
org.kde.games.private.kgame: Cannot find player 1028
Missing separate debuginfos, use: debuginfo-install frameworkintegration-5.76.0-1.mga8.x86_64 gstreamer1.0-plugins-base-1.18.5-1.mga8.x86_64 gstreamer1.0-plugins-good-1.18.5-1.1.mga8.x86_64 gstreamer1.0-pulse-1.18.5-1.1.mga8.x86_64 kimageformats-5.76.0-1.mga8.x86_64 kwindowsystem-5.76.0-1.mga8.x86_64 lib64acl1-2.2.53-2.mga8.x86_64 lib64alsa2-1.2.6.1-1.mga8.x86_64 lib64asyncns0-0.8-12.mga8.x86_64 lib64brotlicommon1-1.0.9-2.mga8.x86_64 lib64brotlidec1-1.0.9-2.mga8.x86_64 lib64bsd0-0.10.0-2.mga8.x86_64 lib64bz2_1-1.0.8-2.mga8.x86_64 lib64canberra0-0.30-15.1.mga8.x86_64 lib64com_err2-1.45.6-6.1.mga8.x86_64 lib64curl4-7.74.0-1.14.mga8.x86_64 lib64dbus1_3-1.13.18-3.1.mga8.x86_64 lib64dbusmenu-qt5_2-0.9.3-1.20160218.4.mga8.x86_64 lib64double-conversion3-3.1.5-2.mga8.x86_64 lib64dri-drivers-21.3.8-2.mga8.x86_64 lib64drm_amdgpu1-2.4.110-1.mga8.x86_64 lib64drm_radeon1-2.4.110-1.mga8.x86_64 lib64edit0-3.1-0.20191231.2.mga8.x86_64 lib64elfutils1-0.182-1.mga8.x86_64 lib64expat1-2.2.10-1.6.mga8.x86_64 lib64fam0-0.1.10-20.mga8.x86_64 lib64flac8-1.3.3-3.2.mga8.x86_64 lib64fontconfig1-2.13.93-4.mga8.x86_64 lib64freetype6-2.10.4-2.3.mga8.tainted.x86_64 lib64gcrypt20-1.8.7-1.2.mga8.x86_64 lib64gl1-1.3.2-16.mga8.x86_64 lib64glapi0-21.3.8-2.mga8.x86_64 lib64glib2.0_0-2.66.8-1.1.mga8.x86_64 lib64glx0-1.3.2-16.mga8.x86_64 lib64gpg-error0-1.41-1.mga8.x86_64 lib64graphite2_3-1.3.14-1.mga8.x86_64 lib64gudev1.0_0-234-1.mga8.x86_64 lib64harfbuzz0-2.7.4-1.mga8.x86_64 lib64ice6-1.0.10-2.mga8.x86_64 lib64icu68-68.2-1.1.mga8.x86_64 lib64idn2_0-2.3.0-4.mga8.x86_64 lib64ilmimf2_5_25-2.5.7-1.3.mga8.x86_64 lib64jbig1-2.1-7.1.mga8.x86_64 lib64jpeg8-2.0.8-1.mga8.x86_64 lib64keyutils1-1.6.3-1.mga8.x86_64 lib64kf5archive5-5.76.0-1.mga8.x86_64 lib64kf5attica5-5.76.0-1.mga8.x86_64 lib64kf5authcore5-5.76.0-1.mga8.x86_64 lib64kf5bookmarks5-5.76.0-1.mga8.x86_64 lib64kf5codecs5-5.76.0-1.mga8.x86_64 lib64kf5comple--Type <RET> for more, q to quit, c to continue without paging--q
Quit
(gdb) thread apply all bt

Thread 313 (Thread 0x7fffdd638640 (LWP 27985) "QThread"):
#0  0x00007ffff5f17071 in clock_nanosleep@GLIBC_2.2.5 () at /lib64/libc.so.6
#1  0x00007ffff5f1c323 in nanosleep () at /lib64/libc.so.6
#2  0x00007ffff64fc1fd in qt_nanosleep(timespec) () at /lib64/libQt5Core.so.5
#3  0x000000000049d12d in Ksirk::GameLogic::AIPlayer::MyThread::run() (this=0x1ff2fc0) at /usr/src/debug/ksirk-20.12.0-1.mga8.x86_64/ksirk/GameLogic/aiplayer.cpp:360
#4  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#5  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 302 (Thread 0x7fffd3494640 (LWP 27951) "Thread (pooled)"):
#0  0x00007ffff4856ba0 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007ffff62de650 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#2  0x00007ffff62dbc75 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5
#3  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#4  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
Comment 6 Albert Astals Cid 2023-10-28 21:46:15 UTC
are you sure? that it doesn't write more threads? or tells you press enter to show more threads or something?

Only threads 302 and 303 is very strange, i'd expect at least a thread #1 in there too.
Comment 7 Jeff Laramie 2023-10-28 23:40:43 UTC
I'll try again and see if I can get more info.
Comment 8 Jeff Laramie 2023-11-01 18:47:21 UTC
Here's what I got this time:

QLayout: Attempting to add QLayout "" to Ksirk::KRightDialog "", which already has a layout
QLayout: Attempting to add QLayout "" to Ksirk::KRightDialog "", which already has a layout
org.kde.games.private.kgame: : not enough players, PAUSING game

[New Thread 0x7fffdd638640 (LWP 1762409)]
Missing separate debuginfos, use: debuginfo-install frameworkintegration-5.76.0-1.mga8.x86_64 gstreamer1.0-plugins-base-1.18.5-1.mga8.x86_64 gstreamer1.0-plugins-good-1.18.5-1.1.mga8.x86_64 gstreamer1.0-pulse-1.18.5-1.1.mga8.x86_64 kimageformats-5.76.0-1.mga8.x86_64 kwindowsystem-5.76.0-1.mga8.x86_64 lib64acl1-2.2.53-2.mga8.x86_64 lib64alsa2-1.2.6.1-1.mga8.x86_64 lib64asyncns0-0.8-12.mga8.x86_64 lib64brotlicommon1-1.0.9-2.mga8.x86_64 lib64brotlidec1-1.0.9-2.mga8.x86_64 lib64bsd0-0.10.0-2.mga8.x86_64 lib64bz2_1-1.0.8-2.mga8.x86_64 lib64canberra0-0.30-15.1.mga8.x86_64 lib64com_err2-1.45.6-6.1.mga8.x86_64 lib64curl4-7.74.0-1.14.mga8.x86_64 lib64dbus1_3-1.13.18-3.1.mga8.x86_64 lib64dbusmenu-qt5_2-0.9.3-1.20160218.4.mga8.x86_64 lib64double-conversion3-3.1.5-2.mga8.x86_64 lib64dri-drivers-21.3.8-2.mga8.x86_64 lib64drm_amdgpu1-2.4.110-1.mga8.x86_64 lib64drm_radeon1-2.4.110-1.mga8.x86_64 lib64edit0-3.1-0.20191231.2.mga8.x86_64 lib64elfutils1-0.182-1.mga8.x86_64 lib64expat1-2.2.10-1.6.mga8.x86_64 lib64fam0-0.1.10-20.mga8.x86_64 lib64flac8-1.3.3-3.2.mga8.x86_64 lib64fontconfig1-2.13.93-4.mga8.x86_64 lib64freetype6-2.10.4-2.3.mga8.tainted.x86_64 lib64gcrypt20-1.8.7-1.2.mga8.x86_64 lib64gl1-1.3.2-16.mga8.x86_64 lib64glapi0-21.3.8-2.mga8.x86_64 lib64glib2.0_0-2.66.8-1.1.mga8.x86_64 lib64glx0-1.3.2-16.mga8.x86_64 lib64gpg-error0-1.41-1.mga8.x86_64 lib64graphite2_3-1.3.14-1.mga8.x86_64 lib64gudev1.0_0-234-1.mga8.x86_64 lib64harfbuzz0-2.7.4-1.mga8.x86_64 lib64ice6-1.0.10-2.mga8.x86_64 lib64icu68-68.2-1.1.mga8.x86_64 lib64idn2_0-2.3.0-4.mga8.x86_64 lib64ilmimf2_5_25-2.5.7-1.3.mga8.x86_64 lib64jbig1-2.1-7.1.mga8.x86_64 lib64jpeg8-2.0.8-1.mga8.x86_64 lib64keyutils1-1.6.3-1.mga8.x86_64 lib64kf5archive5-5.76.0-1.mga8.x86_64 lib64kf5attica5-5.76.0-1.mga8.x86_64 lib64kf5authcore5-5.76.0-1.mga8.x86_64 lib64kf5bookmarks5-5.76.0-1.mga8.x86_64 lib64kf5codecs5-5.76.0-1.mga8.x86_64 lib64kf5completion5-5.76.0-1.mga8.x86_64 lib64kf5configcore5-5.76.0-1.mga8.x86_64 lib64kf5configgui5-5.76.0-1.mga8.x86_64 lib64kf5configwidgets5-5.76.0-1.mga8.x86_64 --Type <RET> for more, q to quit, c to continue without paging--
lib64kf5coreaddons5-5.76.0-1.mga8.x86_64 lib64kf5crash5-5.76.0-1.mga8.x86_64 lib64kf5dbusaddons5-5.76.0-1.mga8.x86_64 lib64kf5declarative5-5.76.0-3.mga8.x86_64 lib64kf5dnssd5-5.76.0-1.mga8.x86_64 lib64kf5globalaccel5-5.76.0-2.mga8.x86_64 lib64kf5guiaddons5-5.76.0-1.mga8.x86_64 lib64kf5i18n5-5.76.0-1.mga8.x86_64 lib64kf5iconthemes5-5.76.0-1.mga8.x86_64 lib64kf5itemviews5-5.76.0-1.mga8.x86_64 lib64kf5kdegames7-20.12.0-1.mga8.x86_64 lib64kf5kdegamesprivate1-20.12.0-1.mga8.x86_64 lib64kf5kiocore5-5.76.0-1.mga8.x86_64 lib64kf5kiogui5-5.76.0-1.mga8.x86_64 lib64kf5newstuff5-5.76.0-1.1.mga8.x86_64 lib64kf5notifications5-5.76.0-3.mga8.x86_64 lib64kf5package5-5.76.0-1.mga8.x86_64 lib64kf5service5-5.76.0-1.mga8.x86_64 lib64kf5solid5-5.76.0-1.mga8.x86_64 lib64kf5sonnetcore5-5.76.0-2.mga8.x86_64 lib64kf5style5-5.76.0-1.mga8.x86_64 lib64kf5textwidgets5-5.76.0-1.mga8.x86_64 lib64kf5wallet5-5.76.0-1.mga8.x86_64 lib64kf5widgetsaddons5-5.76.0-1.mga8.x86_64 lib64kf5windowsystem5-5.76.0-1.mga8.x86_64 lib64kf5xmlgui5-5.76.0-1.mga8.x86_64 lib64krb53-1.18.3-1.3.mga8.x86_64 lib64llvm11.0-11.0.1-4.2.1.mga8.x86_64 lib64lzma5-5.2.5-2.1.mga8.x86_64 lib64mesagl1-21.3.8-2.mga8.x86_64 lib64ncurses6-6.2-20201205.1.mga8.x86_64 lib64nghttp2_14-1.42.0-1.mga8.x86_64 lib64ogg0-1.3.4-2.mga8.x86_64 lib64openal1-1.21.0-1.mga8.x86_64 lib64openssl1.1-1.1.1v-1.mga8.x86_64 lib64orc0.4_0-0.4.32-1.mga8.x86_64 lib64oxygenstyle5_5-5.20.4-2.mga8.x86_64 lib64pcre2_0-10.36-1.1.mga8.x86_64 lib64phonon4qt5_4-4.11.1-2.mga8.x86_64 lib64png16_16-1.6.37-2.mga8.x86_64 lib64psl5-0.21.1-1.mga8.x86_64 lib64pulseaudio0-14.2-2.1.mga8.x86_64 lib64pulsecommon14.2-14.2-2.1.mga8.x86_64 lib64pulseglib20-14.2-2.1.mga8.x86_64 lib64qca-qt5_2-2.3.1-5.mga8.x86_64 lib64qt5core5-5.15.2-4.9.mga8.x86_64 lib64qt5dbus5-5.15.2-4.9.mga8.x86_64 lib64qt5gui5-5.15.2-4.9.mga8.x86_64 lib64qt5network5-5.15.2-4.9.mga8.x86_64 lib64qt5opengl5-5.15.2-4.9.mga8.x86_64 lib64qt5pdf5-5.15.8-1.mga8.x86_64 lib64qt5printsupport5-5.15.2-4.9.mga8.x86_64 lib64qt5qml5-5.15.2-1.mga8.x86_64 lib64qt5quick5-5.15.2-1.mga8.--Type <RET> for more, q to quit, c to continue without paging--
x86_64 lib64qt5quickwidgets5-5.15.2-1.mga8.x86_64 lib64qt5svg5-5.15.2-1.3.mga8.x86_64 lib64qt5xcbqpa5-5.15.2-4.9.mga8.x86_64 lib64qt5xml5-5.15.2-4.9.mga8.x86_64 lib64sasl2_3-2.1.27-3.1.mga8.x86_64 lib64sndfile1-1.0.31-1.2.mga8.x86_64 lib64sndio7.1-1.7.0-1.mga8.x86_64 lib64systemd0-246.16-4.mga8.x86_64 lib64udev1-246.16-4.mga8.x86_64 lib64unistring2-0.9.10-4.mga8.x86_64 lib64unwind8-1.5.0-1.mga8.x86_64 lib64v4l0-1.20.0-3.mga8.x86_64 lib64vorbisenc2-1.3.7-1.mga8.x86_64 lib64vorbisfile3-1.3.7-1.mga8.x86_64 lib64wayland-client0-1.18.0-3.1.mga8.x86_64 lib64x11_6-1.7.0-1.5.mga8.x86_64 lib64xau6-1.0.9-2.mga8.x86_64 lib64xcb-dri2_0-1.14-1.mga8.x86_64 lib64xcb-dri3_0-1.14-1.mga8.x86_64 lib64xcb-glx0-1.14-1.mga8.x86_64 lib64xcb-render0-1.14-1.mga8.x86_64 lib64xcb-res0-1.14-1.mga8.x86_64 lib64xcb-sync1-1.14-1.mga8.x86_64 lib64xcb-util-image0-0.4.0-4.mga8.x86_64 lib64xcb-util-keysyms1-0.4.0-5.mga8.x86_64 lib64xcb1-1.14-1.mga8.x86_64 lib64xdmcp6-1.1.3-2.mga8.x86_64 lib64xfixes3-5.0.3-3.mga8.x86_64 lib64xkbcommon0-1.0.3-1.mga8.x86_64 lib64xrender1-0.9.10-3.mga8.x86_64 lib64xshmfence1-1.3-3.mga8.x86_64 lib64zlib1-1.2.12-1.3.mga8.x86_64 libgcc1-10.4.0-3.mga8.x86_64 libstdc++6-10.4.0-3.mga8.x86_64 oxygen-5.20.4-2.mga8.x86_64 phonon4qt5-gstreamer-4.10.0-2.mga8.x86_64 plasma-workspace-5.20.4-5.2.mga8.x86_64 qtimageformats5-5.15.2-1.mga8.x86_64 qtwebengine5-5.15.8-1.mga8.x86_64
--Type <RET> for more, q to quit, c to continue without paging--Quit
(gdb) thread apply all bt

Thread 689 (Thread 0x7fffdd638640 (LWP 1762409) "ksirk"):
#0  0x00007ffff5f4ea61 in clone () at /lib64/libc.so.6
#1  0x00007ffff4850d10 in start_thread () at /lib64/libpthread.so.0
#2  0x00007fffdd638640 in  ()
#3  0x0000000000000000 in  ()

Thread 686 (Thread 0x7fffd3c95640 (LWP 1762374) "Thread (pooled)"):
#0  0x00007ffff5f484b9 in syscall () at /lib64/libc.so.6
#1  0x00007ffff62d8ce5 in QBasicMutex::lockInternal() () at /lib64/libQt5Core.so.5                                                                      
#2  0x00007ffff62de691 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#3  0x00007ffff62dbc75 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5                                                                         
#4  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5                                                                     
#5  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 685 (Thread 0x7fffdce37640 (LWP 1762373) "Thread (pooled)"):
#0  0x00007ffff5f484b9 in syscall () at /lib64/libc.so.6
#1  0x00007ffff62d8ce5 in QBasicMutex::lockInternal() () at /lib64/libQt5Core.so.5                                                                      
#2  0x00007ffff62de691 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#3  0x00007ffff62dbc75 in QThreadPoolThread::run() () at /lib64/libQt5Core.s--Type <RET> for more, q to quit, c to continue without paging--
o.5
#4  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5                                                                     
#5  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 684 (Thread 0x7fffd2c93640 (LWP 1762372) "Thread (pooled)"):
#0  0x00007ffff4856ba0 in pthread_cond_timedwait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0                                                              
#1  0x00007ffff62de650 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#2  0x00007ffff62dbc75 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5                                                                         
#3  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5                                                                     
#4  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#5  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 683 (Thread 0x7fffd3494640 (LWP 1762371) "Thread (pooled)"):
#0  0x00007ffff5f484b9 in syscall () at /lib64/libc.so.6
#1  0x00007ffff62d8ce5 in QBasicMutex::lockInternal() () at /lib64/libQt5Core.so.5                                                                      
#2  0x00007ffff62de691 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#3  0x00007ffff62dbc75 in QThreadPoolThread::run() () at /lib64/libQt5Core.so.5                                                                         
#4  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Co--Type <RET> for more, q to quit, c to continue without paging--
re.so.5
#5  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 17 (Thread 0x7fff97fff640 (LWP 1739233) "threaded-ml"):
#0  0x00007ffff5f431bf in poll () at /lib64/libc.so.6
#1  0x00007ffff5d3e072 in poll_func () at /lib64/libpulse.so.0
#2  0x00007ffff5d300d9 in pa_mainloop_poll () at /lib64/libpulse.so.0
#3  0x00007ffff5d3073f in pa_mainloop_iterate () at /lib64/libpulse.so.0
#4  0x00007ffff5d307f0 in pa_mainloop_run () at /lib64/libpulse.so.0
#5  0x00007ffff5d3e136 in thread () at /lib64/libpulse.so.0
#6  0x00007ffff396e918 in internal_thread_func () at /usr/lib64/pulseaudio/libpulsecommon-14.2.so                                                       
#7  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#8  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7fffdde39640 (LWP 1739203) "ksirk:disk$0"):
#0  0x00007ffff485686a in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0                                                                   
#1  0x00007fffde01364b in util_queue_thread_func () at /usr/lib64/dri/r600_dri.so                                                                       
#2  0x00007fffde0132e7 in impl_thrd_routine () at /usr/lib64/dri/r600_dri.so
#3  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7fffe9f3f640 (LWP 1739202) "ksirk:rcs0"):
--Type <RET> for more, q to quit, c to continue without paging--
#0  0x00007ffff485686a in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0                                                                   
#1  0x00007fffde01364b in util_queue_thread_func () at /usr/lib64/dri/r600_dri.so                                                                       
#2  0x00007fffde0132e7 in impl_thrd_routine () at /usr/lib64/dri/r600_dri.so
#3  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fffebb02640 (LWP 1739198) "QDBusConnection"):
#0  0x00007ffff5f431bf in poll () at /lib64/libc.so.6
#1  0x00007ffff3a70ce6 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0                                                                
#2  0x00007ffff3a70def in g_main_context_iteration () at /lib64/libglib-2.0.so.0                                                                        
#3  0x00007ffff64fc7b0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007ffff64a68bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007ffff62d79be in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007ffff5d755c7 in QDBusConnectionManager::run() () at /lib64/libQt5DBus.so.5                                                                    
#7  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5                                                                     
#8  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#9  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

--Type <RET> for more, q to quit, c to continue without paging--
Thread 2 (Thread 0x7ffff0a01640 (LWP 1739197) "QXcbEventQueue"):
#0  0x00007ffff5f431bf in poll () at /lib64/libc.so.6
#1  0x00007ffff3a04cd2 in _xcb_conn_wait () at /lib64/libxcb.so.1
#2  0x00007ffff3a0689a in xcb_wait_for_event () at /lib64/libxcb.so.1
#3  0x00007ffff0d26520 in QXcbEventQueue::run() () at /lib64/libQt5XcbQpa.so.5                                                                          
#4  0x00007ffff62d8a11 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5                                                                     
#5  0x00007ffff4850dec in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffff5f4ea6f in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7ffff2f40880 (LWP 1739192) "ksirk"):
#0  0x00007ffff5f4ea61 in clone () at /lib64/libc.so.6
#1  0x00007ffff484fd40 in create_thread () at /lib64/libpthread.so.0
#2  0x00007ffff485159f in pthread_create@@GLIBC_2.2.5 () at /lib64/libpthread.so.0                                                                      
#3  0x00007ffff62d853b in QThread::start(QThread::Priority) () at /lib64/libQt5Core.so.5                                                                
#4  0x00007ffff62dc21e in QThreadPoolPrivate::tryStart(QRunnable*) () at /lib64/libQt5Core.so.5                                                         
#5  0x00007ffff62dca26 in QThreadPool::start(QRunnable*, int) () at /lib64/libQt5Core.so.5                                                              
#6  0x00007ffff62dccae in QThreadPool::start(std::function<void ()>, int) () at /lib64/libQt5Core.so.5
#7  0x00007ffff69701cf in convert_generic(QImageData*, QImageData const*, QFlags<Qt::ImageConversionFlag>) () at /lib64/libQt5Gui.so.5
#8  0x00007ffff695ec89 in QImage::convertToFormat_helper(QImage::Format, QFl--Type <RET> for more, q to quit, c to continue without paging--
ags<Qt::ImageConversionFlag>) const () at /lib64/libQt5Gui.so.5
#9  0x00007ffff0d19df2 in QXcbWindow::setWindowIcon(QIcon const&) () at /lib64/libQt5XcbQpa.so.5                                                        
#10 0x00007ffff691c733 in QWindow::setIcon(QIcon const&) () at /lib64/libQt5Gui.so.5                                                                    
#11 0x00007ffff707c848 in QWidgetPrivate::setWindowIcon_sys() () at /lib64/libQt5Widgets.so.5                                                           
#12 0x00007ffff708640d in QWidget::create(unsigned long long, bool, bool) () at /lib64/libQt5Widgets.so.5
#13 0x00007ffff709227a in QWidgetPrivate::setVisible(bool) () at /lib64/libQt5Widgets.so.5                                                              
#14 0x00007ffff7246a94 in QDialog::setVisible(bool) () at /lib64/libQt5Widgets.so.5                                                                     
#15 0x000000000044dfbb in Ksirk::GameLogic::GameAutomaton::slotNetworkData(int, QByteArray const&, unsigned int, unsigned int) (this=0x5b49d0, msgid=<optimized out>, buffer=<optimized out>, receiver=<optimized out>, sender=1) at /usr/src/debug/ksirk-20.12.0-1.mga8.x86_64/ksirk/GameLogic/gameautomaton.cpp:2154
#16 0x00007ffff64dca24 in void doActivate<false>(QObject*, int, void**) () at /lib64/libQt5Core.so.5
#17 0x00007ffff7d01e93 in KGame::signalNetworkData(int, QByteArray const&, unsigned int, unsigned int) () at /lib64/libKF5KDEGamesPrivate.so.1
#18 0x00007ffff7d1520c in KGame::networkTransmission(QDataStream&, int, unsigned int, unsigned int, unsigned int) () at /lib64/libKF5KDEGamesPrivate.so.1                                                                           
#19 0x00007ffff7d1b245 in KGameNetwork::receiveNetworkTransmission(QByteArray const&, unsigned int) () at /lib64/libKF5KDEGamesPrivate.so.1
--Type <RET> for more, q to quit, c to continue without paging--
#20 0x00007ffff64dca24 in void doActivate<false>(QObject*, int, void**) () at /lib64/libQt5Core.so.5
#21 0x00007ffff7d01fc3 in KMessageClient::broadcastReceived(QByteArray const&, unsigned int) () at /lib64/libKF5KDEGamesPrivate.so.1
#22 0x00007ffff7d238c6 in KMessageClient::processMessage(QByteArray const&) () at /lib64/libKF5KDEGamesPrivate.so.1
#23 0x00007ffff64dca24 in void doActivate<false>(QObject*, int, void**) () at /lib64/libQt5Core.so.5
#24 0x00007ffff7d01da2 in KMessageIO::received(QByteArray const&) () at /lib64/libKF5KDEGamesPrivate.so.1                                               
#25 0x00007ffff7d26a9a in KMessageServer::broadcastMessage(QByteArray const&) () at /lib64/libKF5KDEGamesPrivate.so.1
#26 0x00007ffff7d29061 in KMessageServer::processOneMessage() () at /lib64/libKF5KDEGamesPrivate.so.1                                                   
#27 0x00007ffff64dca24 in void doActivate<false>(QObject*, int, void**) () at /lib64/libQt5Core.so.5
#28 0x00007ffff64e06ea in QTimer::timeout(QTimer::QPrivateSignal) () at /lib64/libQt5Core.so.5
#29 0x00007ffff64d2dbf in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5
#30 0x00007ffff7053b1f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#31 0x00007ffff64a7d2a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#32 0x00007ffff64fbc83 in QTimerInfoList::activateTimers() () at /lib64/libQt5Core.so.5
#33 0x00007ffff64fc48c in idleTimerSourceDispatch(_GSource*, int (*)(void*),--Type <RET> for more, q to quit, c to continue without paging--
 void*) () at /lib64/libQt5Core.so.5
#34 0x00007ffff3a709ee in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#35 0x00007ffff3a70d48 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#36 0x00007ffff3a70def in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#37 0x00007ffff64fc7b0 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#38 0x00007ffff64a68bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#39 0x00007ffff64ae522 in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#40 0x0000000000436965 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/ksirk-20.12.0-1.mga8.x86_64/ksirk/main.cpp:83
Comment 9 Albert Astals Cid 2023-11-09 21:31:41 UTC
ok, not super useful sadly, we need someone to find time to look at it :/

I'd say the 
org.kde.games.private.kgame: : not enough players, PAUSING game
and
org.kde.games.private.kgame: incorrect message id 20  - emit anyway
org.kde.games.private.kgame: Cannot find player 1028
may help debugging when someone has time.
Comment 10 Jeff Laramie 2023-11-09 22:37:47 UTC
FYI, those messages occur whenever a player is eliminated, the game does not pause, but it does hang occasionally.  I've had it freeze again during normal game play. I'll start running it with gdb again and see if I can catch it or if I can get a more useful backtrace.