Bug 505400

Summary: spectacle fails to start after some uptime
Product: [Plasma] plasmashell Reporter: ctj9512
Component: generalAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED DOWNSTREAM    
Severity: normal CC: kde, nate
Priority: NOR    
Version First Reported In: 6.3.91   
Target Milestone: 1.0   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description ctj9512 2025-06-10 00:33:02 UTC
SUMMARY

spectacle fails to start after some uptime. The spectacle process hangs, and gdb shows it is waiting in the following stack trace:

#0  __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1  0x00007ffb4f8a1fda 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 cancellation.c:49
#2  0x00007ffb4f8a264c in __futex_abstimed_wait_common64 (private=0, futex_word=0x5653c9d027e8, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true)
    at futex-internal.c:57
#3  __futex_abstimed_wait_common (futex_word=futex_word@entry=0x5653c9d027e8, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0,
    private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
#4  0x00007ffb4f8a26af in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x5653c9d027e8, expected=<optimized out>, clockid=clockid@entry=0,
    abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:139
#5  0x00007ffb4f8a4d1e in __pthread_cond_wait_common (cond=0x5653c9d027c8, mutex=0x5653c9d027a0, clockid=0, abstime=0x0) at pthread_cond_wait.c:426
#6  ___pthread_cond_wait (cond=0x5653c9d027c8, mutex=0x5653c9d027a0) at pthread_cond_wait.c:458
#7  0x00007ffb5012ddb0 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /usr/lib/libQt6Core.so.6
#8  0x00007ffb523cfbdc in ?? () from /usr/lib/libQt6DBus.so.6
#9  0x00007ffb52394859 in ?? () from /usr/lib/libQt6DBus.so.6
#10 0x00007ffb52376faa in QDBusConnection::call(QDBusMessage const&, QDBus::CallMode, int) const () from /usr/lib/libQt6DBus.so.6
#11 0x00005653b01dcdb7 in ?? ()
#12 0x00005653b01fd601 in ?? ()
#13 0x00005653b020325e in ?? ()
#14 0x00007ffb4ffd37ef in ?? () from /usr/lib/libQt6Core.so.6
#15 0x00007ffb55c27db4 in KDBusService::activateRequested(QList<QString> const&, QString const&) () from /usr/lib/libKF6DBusAddons.so.6
#16 0x00007ffb55c339ab in ?? () from /usr/lib/libKF6DBusAddons.so.6
#17 0x00007ffb55c34400 in ?? () from /usr/lib/libKF6DBusAddons.so.6
#18 0x00007ffb52385b09 in ?? () from /usr/lib/libQt6DBus.so.6
#19 0x00007ffb52386984 in ?? () from /usr/lib/libQt6DBus.so.6
#20 0x00007ffb52389ab7 in ?? () from /usr/lib/libQt6DBus.so.6
#21 0x00007ffb5238a4ba in ?? () from /usr/lib/libQt6DBus.so.6
#22 0x00007ffb4ffc0e34 in QObject::event(QEvent*) () from /usr/lib/libQt6Core.so.6
#23 0x00007ffb52d01c70 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt6Widgets.so.6
#24 0x00007ffb4ff68118 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt6Core.so.6
#25 0x00007ffb4ff684fb in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQt6Core.so.6
#26 0x00007ffb5023fcf8 in ?? () from /usr/lib/libQt6Core.so.6
#27 0x00007ffb4c12387d in g_main_dispatch (context=0x7ffab0000f00) at ../glib/glib/gmain.c:3398
#28 0x00007ffb4c124cd7 in g_main_context_dispatch_unlocked (context=0x7ffab0000f00) at ../glib/glib/gmain.c:4249
#29 g_main_context_iterate_unlocked (context=context@entry=0x7ffab0000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at ../glib/glib/gmain.c:4314
#30 0x00007ffb4c124ee5 in g_main_context_iteration (context=0x7ffab0000f00, may_block=1) at ../glib/glib/gmain.c:4379
#31 0x00007ffb5023c5e2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6
#32 0x00007ffb4ff744b6 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt6Core.so.6
#33 0x00007ffb4ff6c7c1 in QCoreApplication::exec() () from /usr/lib/libQt6Core.so.6
#34 0x00005653b016139e in ?? ()
#35 0x00007ffb4f8376b5 in __libc_start_call_main (main=main@entry=0x5653b01604f0, argc=argc@entry=2, argv=argv@entry=0x7ffdd9692608)
    at ../sysdeps/nptl/libc_start_call_main.h:58
#36 0x00007ffb4f837769 in __libc_start_main_impl (main=0x5653b01604f0, argc=2, argv=0x7ffdd9692608, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
    stack_end=0x7ffdd96925f8) at ../csu/libc-start.c:360
#37 0x00005653b0162b75 in ?? ()

Rarely, after waiting anywhere between a few seconds and several minutes, the screenshot UI shows up.

The following shows up in systemd journal:

spectacle[3180927]: Error querying plasma version "org.freedesktop.DBus.Error.NoReply" "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken."

STEPS TO REPRODUCE
1. Use Plasma for a while (not sure what the exact cause is)
2. Launch spectacle to take screenshot


SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 6.3.91
KDE Frameworks Version: 6.14.0
Qt Version: 6.9.1
Kernel Version: 6.15.0-1-mainline (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 7735HS with Radeon Graphics
Memory: 96 GiB of RAM (93.5 GiB usable)
Graphics Processor 1: AMD Radeon 680M
Graphics Processor 2: AMD Radeon RX 7700S

ADDITIONAL INFORMATION

For some reason when this is happening, I can also no longer use my keyboard shortcut (Super) to open the application launcher; I must click the launcher button. Other shortcuts work fine (Alt+Tab, etc)
Comment 1 Nate Graham 2025-06-10 14:49:26 UTC
Those symptoms indicate that something is globally wrong with DBus on your system. This isn't a Spectacle problem, but it is a problem somewhere and it's definitely something that needs to be fixed or else loads of things will break mysteriously.

The nature of every Arch system being different unfortunately makes this undebuggable from a KDE perspective; I'd recommend talking to folks in an Arch-specific venue to see if they can help you figure out the problem.

Good luck!