https://bugs.kde.org/show_bug.cgi?id=513620
Bug ID: 513620
Summary: Plasmashell hangs for ~20 sec. after login when a
phone paired via kdeconnect is connected to Wifi
Classification: Plasma
Product: plasmashell
Version First master
Reported In:
Platform: Other
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: generic-performance
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: 1.0
SUMMARY
Most of the time, after logging into my Plasma session, there is a ~20 sec.
long period where plasmashell hangs (Panel is not responsive). It happens only
if my phone that I paired via kdeconnect is connected to my Wifi. The backtrace
of the hanging plasmashell gives a hint to kdeconnect too.
STEPS TO REPRODUCE
1. Ensure my phone is connected to Wifi.
2. Log into Plasma session.
3. Wait for ~20-30 seconds. During this time, the panel stays responsive (I
check it by hovering over the pinned apps with the mouse to see if the tooltips
still change).
OBSERVED RESULT
After those ~20-30 seconds, the panel will become unresponsive, plasmashell
hangs. This state persists for ~20 seconds (backtrace below). Then plasmashell
unfreezes and the panel becomes responsive again as usual.
EXPECTED RESULT
Plasmashell does not hang :)
SOFTWARE/OS VERSIONS
Distro: Kubuntu 25.10 + Backports- & Backports-Beta-PPA
KDE Plasma Version: 6.5.4
KDE Frameworks Version: 6.20.0
KDE Connect Version: 25.08.3
Qt Version: 6.9.2
Graphics platform: Wayland
ADDITIONAL INFORMATION
* I can't reproduce the hang when the phone is offline, or unpaired.
* I have been seeing this kind of hangs for more than 6 months, when I was
still using Kubuntu 25.04 (or even 24.10? Sorry for taking such a long time to
write a report.)
* Deleting all kdeconnect related config/state files (that I could find) from
my home dir made no difference.
* Phone is a Fairphone 5 with /e/ OS, version
3.2-a15-20251022539003-official-FP5. KDE Connect Android Client is installed
from F-Droid.
BACKTRACE of plasmashell during hang:
#0 __syscall_cancel_arch ()
at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
#1 0x0000741aed4a00ac in __internal_syscall_cancel (
a1=a1@entry=95419285720136, a2=<optimized out>, a3=a3@entry=580844608,
a4=a4@entry=0, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202)
at ./nptl/cancellation.c:49
#2 0x0000741aed4a0807 in __futex_abstimed_wait_common64 (private=0,
futex_word=0x56c888a14c48, expected=580844608, op=393, abstime=0x0,
cancel=true) at ./nptl/futex-internal.c:57
#3 __futex_abstimed_wait_common (futex_word=0x56c888a14c48,
expected=580844608, clockid=0, abstime=0x0, private=0, cancel=true)
at ./nptl/futex-internal.c:87
#4 __GI___futex_abstimed_wait_cancelable64 (
futex_word=futex_word@entry=0x56c888a14c48, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0x0,
private=private@entry=0) at ./nptl/futex-internal.c:139
#5 0x0000741aed4a3067 in __pthread_cond_wait_common (cond=<optimized out>,
mutex=0x56c888a14c00, clockid=0, abstime=0x0)
at ./nptl/pthread_cond_wait.c:421
#6 ___pthread_cond_wait (cond=<optimized out>, mutex=0x56c888a14c00)
at ./nptl/pthread_cond_wait.c:453
#7 0x0000741aedf0ca5c in QWaitConditionPrivate::wait (this=0x56c888a14c00,
deadline=...)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/thread/qwaitcondition_unix.cpp:67
#8 QWaitCondition::wait (this=this@entry=0x56c8884f3a90,
mutex=mutex@entry=0x56c8884f3a88, deadline=...)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/thread/qwaitcondition_unix.cpp:145
#9 0x0000741aeedc58e5 in QDBusPendingCallPrivate::waitForFinished (
this=0x56c8884f3a40)
at /usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/dbus/qdbuspendingcall.cpp:207
#10 0x0000741aeedc5f5a in QDBusPendingReplyBase::argumentAt (
this=0x7ffd229efe10, index=index@entry=0)
at /usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/dbus/qdbuspendingreply.cpp:237
#11 0x0000741a902cc765 in QDBusPendingReply<bool>::argumentAt<0> (
this=<optimized out>)
at /usr/include/x86_64-linux-gnu/qt6/QtDBus/qdbuspendingreply.h:82
#12 0x0000741a902d13c3 in QDBusPendingReply<bool>::operator bool (
this=<optimized out>, this=<optimized out>)
at /usr/include/x86_64-linux-gnu/qt6/QtDBus/qdbuspendingreply.h:103
--Type <RET> for more, q to quit, c to continue without paging--c
#13 DevicesModel::passesFilter (this=<optimized out>, dev=<optimized out>)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/interfaces/devicesmodel.cpp:279
#14 DevicesModel::passesFilter (dev=dev@entry=0x741adc010100,
this=0x56c887307310)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/interfaces/devicesmodel.cpp:274
#15 0x0000741a902d8156 in DevicesModel::deviceAdded (this=0x56c887307310,
id=...)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/interfaces/devicesmodel.cpp:77
#16 DevicesModel::deviceAdded (this=0x56c887307310, id=...)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/interfaces/devicesmodel.cpp:67
#17 0x0000741aedde4a95 in QtPrivate::QSlotObjectBase::call (
this=<optimized out>, r=<optimized out>, a=<optimized out>,
this=<optimized out>, r=<optimized out>, a=<optimized out>)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qobjectdefs_impl.h:461
#18 doActivate<false> (sender=0x56c886d3c980, signal_index=5,
argv=0x7ffd229f0100)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qobject.cpp:4157
#19 0x0000741a902ec9e5 in QMetaObject::activate<void, QString> (
sender=<optimized out>, mo=<optimized out>,
local_signal_index=<optimized out>, ret=<optimized out>,
sender=<optimized out>, mo=<optimized out>,
local_signal_index=<optimized out>, ret=<optimized out>)
at /usr/include/x86_64-linux-gnu/qt6/QtCore/qobjectdefs.h:306
#20 OrgKdeKdeconnectDaemonInterface::deviceAdded (this=<optimized out>,
_t1=...)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/obj-x86_64-linux-gnu/interfaces/generated/moc_daemoninterface.cpp:288
#21 OrgKdeKdeconnectDaemonInterface::qt_static_metacall (_o=<optimized out>,
_c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/obj-x86_64-linux-gnu/interfaces/generated/moc_daemoninterface.cpp:170
#22 0x0000741a902eefe7 in OrgKdeKdeconnectDaemonInterface::qt_metacall (
this=0x56c886d3c980, _c=<optimized out>, _id=2, _a=0x7ffd229f0308)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/obj-x86_64-linux-gnu/interfaces/generated/moc_daemoninterface.cpp:256
#23 0x0000741a902d539e in DaemonDbusInterface::qt_metacall (
this=0x56c886d3c980, _c=QMetaObject::InvokeMetaMethod,
_id=<optimized out>, _a=0x7ffd229f0308)
at
/usr/src/kdeconnect-25.08.3-0ubuntu1.1~ubuntu25.10~ppa1/obj-x86_64-linux-gnu/interfaces/kdeconnectinterfaces_autogen/include/moc_dbusinterfaces.cpp:114
#24 0x0000741aeed7a75d in QDBusConnectionPrivate::deliverCall (
this=0x741ae0001700, object=0x56c886d3c980, msg=..., metaTypes=...,
slotIdx=7)
at /usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/dbus/qdbusintegrator.cpp:1008
#25 0x0000741aeddd61d4 in QObject::event (this=<optimized out>,
e=<optimized out>)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qobject.cpp:1432
#26 0x0000741af019d49f in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /lib/x86_64-linux-gnu/libQt6Widgets.so.6
#27 0x0000741aedd8add8 in QCoreApplication::notifyInternal2 (
receiver=0x56c886d3c980, event=0x741ae0048600)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qcoreapplication.cpp:1106
#28 0x0000741aedd8ae1d in QCoreApplication::sendEvent (
receiver=<optimized out>, event=<optimized out>)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qcoreapplication.cpp:1546
#29 0x0000741aedd8b04e in QCoreApplicationPrivate::sendPostedEvents (
receiver=0x0, event_type=0, data=0x56c885596020)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qcoreapplication.cpp:1891
#30 0x0000741aedff445f in postEventSourceDispatch (s=0x56c88559cc20)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#31 0x0000741aec797bfb in g_main_dispatch (context=0x741ae0000f50)
at ../../../glib/gmain.c:3565
#32 0x0000741aec799237 in g_main_context_dispatch_unlocked (
context=0x741ae0000f50) at ../../../glib/gmain.c:4425
#33 g_main_context_iterate_unlocked (context=context@entry=0x741ae0000f50,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at ../../../glib/gmain.c:4490
#34 0x0000741aec799423 in g_main_context_iteration (context=0x741ae0000f50,
may_block=1) at ../../../glib/gmain.c:4556
#35 0x0000741aedff130d in QEventDispatcherGlib::processEvents (
this=0x56c88555ec70, flags=...)
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#36 0x0000741aedd944c3 in QEventLoop::exec (this=0x7ffd229f0950, flags=...)
at /usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/global/qflags.h:77
#37 0x0000741aedd8dc07 in QCoreApplication::exec ()
at
/usr/src/qt6-base-6.9.2+dfsg-1ubuntu1/src/corelib/kernel/qcoreapplication.cpp:1449
#38 0x000056c85ced36b1 in ?? ()
#39 0x0000741aed42a575 in __libc_start_call_main (
main=main@entry=0x56c85ced28d0, argc=argc@entry=2,
argv=argv@entry=0x7ffd229f0f68)
at ../sysdeps/nptl/libc_start_call_main.h:58
#40 0x0000741aed42a628 in __libc_start_main_impl (main=0x56c85ced28d0, argc=2,
argv=0x7ffd229f0f68, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7ffd229f0f58)
at ../csu/libc-start.c:360
#41 0x000056c85ced37e5 in ?? ()
--
You are receiving this mail because:
You are watching all bug changes.