<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>430740</bug_id>
          
          <creation_ts>2020-12-23 10:54:33 +0000</creation_ts>
          <short_desc>kded5 crashes on logout from Wayland session</short_desc>
          <delta_ts>2021-01-13 18:44:55 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>plasmashell</product>
          <component>generic-crash</component>
          <version>master</version>
          <rep_platform>Neon</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>UPSTREAM</resolution>
          
          <see_also>https://bugs.kde.org/show_bug.cgi?id=424408</see_also>
    
    <see_also>https://bugs.kde.org/show_bug.cgi?id=430739</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>wayland-only</keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>1.0</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Patrick Silva">bugseforuns</reporter>
          <assigned_to name="Plasma Bugs List">plasma-bugs-null</assigned_to>
          <cc>nate</cc>
    
    <cc>plasma-bugs-null</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1987736</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick Silva">bugseforuns</who>
    <bug_when>2020-12-23 10:54:33 +0000</bug_when>
    <thetext>SUMMARY
Sometimes my system generates coredump of kded5 after logout from Wayland session.

STEPS TO REPRODUCE
1. start Wayland session
2. logout
3. 

EXPECTED RESULT
no coredump after logout

SOFTWARE/OS VERSIONS
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.20.80
KDE Frameworks Version: 5.78.0
Qt Version: 5.15.2


Thread 7 (Thread 0x7f03bee0c700 (LWP 11935)):
#0  g_mutex_unlock (mutex=0x7f03b4000c20) at ../../../glib/gthread-posix.c:1493
#1  0x00007f03eada7277 in g_main_context_acquire (context=0x7f03b4000c20) at ../../../glib/gmain.c:3389
#2  0x00007f03eada8065 in g_main_context_iterate (context=context@entry=0x7f03b4000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:3997
#3  0x00007f03eada82e3 in g_main_context_iteration (context=0x7f03b4000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007f03ec1aafbb in QEventDispatcherGlib::processEvents (this=0x7f03b4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f03ec14f1ab in QEventLoop::exec (this=this@entry=0x7f03bee0bd60, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f03ebf69a12 in QThread::exec (this=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f03ebf6abac in QThreadPrivate::start (arg=0x55f9c6ef1740) at thread/qthread_unix.cpp:329
#8  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#9  0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f03d5782700 (LWP 11835)):
#0  0x00007f03ebbdfaff in __GI___poll (fds=0x55f9c6e2f470, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f03eada81ae in g_main_context_poll (priority=&lt;optimized out&gt;, n_fds=1, fds=0x55f9c6e2f470, timeout=&lt;optimized out&gt;, context=0x55f9c6e2f380) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x55f9c6e2f380, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:4042
#3  0x00007f03eada82e3 in g_main_context_iteration (context=context@entry=0x55f9c6e2f380, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007f03d5fce99d in dconf_gdbus_worker_thread (user_data=0x55f9c6e2f380) at ../gdbus/dconf-gdbus-thread.c:82
#5  0x00007f03eadd1931 in g_thread_proxy (data=0x55f9c6e354c0) at ../../../glib/gthread.c:807
#6  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#7  0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f03e643e700 (LWP 11764)):
#0  0x00007f03ebbdfaff in __GI___poll (fds=0x7f03e00450f0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f03eada81ae in g_main_context_poll (priority=&lt;optimized out&gt;, n_fds=1, fds=0x7f03e00450f0, timeout=&lt;optimized out&gt;, context=0x7f03e0000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7f03e0000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:4042
#3  0x00007f03eada82e3 in g_main_context_iteration (context=0x7f03e0000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007f03ec1aafbb in QEventDispatcherGlib::processEvents (this=0x7f03e0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f03ec14f1ab in QEventLoop::exec (this=this@entry=0x7f03e643dd30, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f03ebf69a12 in QThread::exec (this=this@entry=0x7f03ec541d80 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f03ec4bdf4b in QDBusConnectionManager::run (this=0x7f03ec541d80 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at qdbusconnection.cpp:179
#8  0x00007f03ebf6abac in QThreadPrivate::start (arg=0x7f03ec541d80 &lt;(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder&gt;) at thread/qthread_unix.cpp:329
#9  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#10 0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f03d5f83700 (LWP 11818)):
#0  0x00007f03ebbdfaff in __GI___poll (fds=0x55f9c6e48fc0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f03eada81ae in g_main_context_poll (priority=&lt;optimized out&gt;, n_fds=1, fds=0x55f9c6e48fc0, timeout=&lt;optimized out&gt;, context=0x55f9c6e48ed0) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x55f9c6e48ed0, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:4042
#3  0x00007f03eada82e3 in g_main_context_iteration (context=0x55f9c6e48ed0, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007f03eada8331 in glib_worker_main (data=&lt;optimized out&gt;) at ../../../glib/gmain.c:5996
#5  0x00007f03eadd1931 in g_thread_proxy (data=0x7f03cc001b60) at ../../../glib/gthread.c:807
#6  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#7  0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f03d6ccd700 (LWP 11781)):
#0  0x00007f03ebbdfaff in __GI___poll (fds=0x7f03cc004a60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f03eada81ae in g_main_context_poll (priority=&lt;optimized out&gt;, n_fds=1, fds=0x7f03cc004a60, timeout=&lt;optimized out&gt;, context=0x7f03cc000c20) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=context@entry=0x7f03cc000c20, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:4042
#3  0x00007f03eada82e3 in g_main_context_iteration (context=0x7f03cc000c20, may_block=may_block@entry=1) at ../../../glib/gmain.c:4108
#4  0x00007f03ec1aafa2 in QEventDispatcherGlib::processEvents (this=0x7f03cc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#5  0x00007f03ec14f1ab in QEventLoop::exec (this=this@entry=0x7f03d6cccd60, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f03ebf69a12 in QThread::exec (this=&lt;optimized out&gt;) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f03ebf6abac in QThreadPrivate::start (arg=0x55f9c6d19710) at thread/qthread_unix.cpp:329
#8  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#9  0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f03d4f81700 (LWP 11854)):
#0  0x00007f03ebbdfaff in __GI___poll (fds=0x7f03c0017550, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f03eada81ae in g_main_context_poll (priority=&lt;optimized out&gt;, n_fds=1, fds=0x7f03c0017550, timeout=&lt;optimized out&gt;, context=0x7f03c00147a0) at ../../../glib/gmain.c:4346
#2  g_main_context_iterate (context=0x7f03c00147a0, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at ../../../glib/gmain.c:4042
#3  0x00007f03eada8533 in g_main_loop_run (loop=0x7f03c0014890) at ../../../glib/gmain.c:4241
#4  0x00007f03d6305eda in gdbus_shared_thread_func (user_data=0x7f03c0014770) at ../../../gio/gdbusprivate.c:279
#5  0x00007f03eadd1931 in g_thread_proxy (data=0x7f03c0002ea0) at ../../../glib/gthread.c:807
#6  0x00007f03eb709609 in start_thread (arg=&lt;optimized out&gt;) at pthread_create.c:477
#7  0x00007f03ebbec293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f03e8d9f840 (LWP 11763)):
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007f03ecc82f9b in KCrash::defaultCrashHandler (sig=6) at ./src/kcrash.cpp:577
#2  &lt;signal handler called&gt;
#3  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#4  0x00007f03ebaef859 in __GI_abort () at abort.c:79
#5  0x00007f03ebf2fbe7 in qt_message_fatal (context=..., message=&lt;synthetic pointer&gt;...) at global/qlogging.cpp:1914
#6  QMessageLogger::fatal (this=this@entry=0x7fff4e28ea10, msg=msg@entry=0x7f03e87d00b8 &quot;The Wayland connection broke. Did the Wayland compositor die?&quot;) at global/qlogging.cpp:893
#7  0x00007f03e8713d65 in QtWaylandClient::QWaylandDisplay::checkError (this=&lt;optimized out&gt;) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlogging.h:90
#8  QtWaylandClient::QWaylandDisplay::checkError (this=&lt;optimized out&gt;) at qwaylanddisplay.cpp:204
#9  0x00007f03e872516c in QtWaylandClient::QWaylandDisplay::flushRequests (this=0x55f9c6b30160) at qwaylanddisplay.cpp:222
#10 0x00007f03ec1876f0 in doActivate&lt;false&gt; (sender=0x55f9c6bb26f0, signal_index=4, argv=0x7fff4e28eb20) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:395
#11 0x00007f03ec180a87 in QMetaObject::activate (sender=sender@entry=0x55f9c6bb26f0, m=m@entry=0x7f03ec3ea1e0 &lt;QAbstractEventDispatcher::staticMetaObject&gt;, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3946
#12 0x00007f03ec14d247 in QAbstractEventDispatcher::awake (this=this@entry=0x55f9c6bb26f0) at .moc/moc_qabstracteventdispatcher.cpp:149
#13 0x00007f03ec1aafdc in QEventDispatcherGlib::processEvents (this=0x55f9c6bb26f0, flags=...) at kernel/qeventdispatcher_glib.cpp:430
#14 0x00007f03ec14f1ab in QEventLoop::exec (this=this@entry=0x7fff4e28ec40, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#15 0x00007f03ec157354 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#16 0x000055f9c68a2cf9 in main (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;) at ./src/kded.cpp:795</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1987802</commentid>
    <comment_count>1</comment_count>
    <who name="Nate Graham">nate</who>
    <bug_when>2020-12-23 15:29:18 +0000</bug_when>
    <thetext>#6  QMessageLogger::fatal (this=this@entry=0x7fff4e28ea10, msg=msg@entry=0x7f03e87d00b8 &quot;The Wayland connection broke. Did the Wayland compositor die?&quot;) at global/qlogging.cpp:893</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1993987</commentid>
    <comment_count>2</comment_count>
    <who name="Nate Graham">nate</who>
    <bug_when>2021-01-13 18:44:55 +0000</bug_when>
    <thetext>#6  QMessageLogger::fatal (this=this@entry=0x7fffd70c5ba0, msg=msg@entry=0x7ff994ac00b8 &quot;The Wayland connection broke. Did the Wayland compositor die?&quot;) at global/qlogging.cpp:893

This means that the compositor crashed. Due to a Qt issue, when this happens, the app using it will crash too. KDE developers submitted a fix, but sadly it was not merged. See https://codereview.qt-project.org/c/qt/qtwayland/+/308984.

Until we get better handling of this in Qt, the best we can do is debug why the compositor crashed in the first place. So can you please get a backtrace of the crash in kwin_wayland and then file a new bug report with it on kwin | wayland-generic? Thanks!

You may be able to use the `coredumpctl` utility to retrieve the backtrace. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports#Retrieving_a_backtrace_using_coredumpctl</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>