Bug 404648 - [Wayland] Sometimes plasma and powerdevil crash together and power management stops working
Summary: [Wayland] Sometimes plasma and powerdevil crash together and power management...
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-wayland (show other bugs)
Version: 5.15.1
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-02-21 15:34 UTC by Patrick Silva
Modified: 2019-09-29 13:42 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
screenshot - error in power management kcm, missing battery applet in system tray, drkonqi shows powerdevil crash (138.96 KB, image/png)
2019-02-21 15:34 UTC, Patrick Silva
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Silva 2019-02-21 15:34:02 UTC
SUMMARY
Sometimes plasma and powerdevil crash together under Wayland. Power management kcm shows an error message and battery applet disappears from system tray (see the screenshot). coredumpctl command shows no crash related to plasma or powerdevil despite drkonqi icon shows up in the system tray.
Such crashes almost always occur when I follow the steps below, but I can't reproduce consistently. Apparently it's a random problem.

STEPS TO REPRODUCE
1. right click on your desktop
2. select "Leave"
3. 

OBSERVED RESULT
plasma crashes (panel and desktop close)


EXPECTED RESULT
no crash

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 5.15.1
KDE Frameworks Version: 5.55.0
Qt Version: 5.12.1
Kernel Version: 4.20.10-arch1-1-ARCH
Comment 1 Patrick Silva 2019-02-21 15:34:57 UTC
Created attachment 118252 [details]
screenshot - error in power management kcm, missing battery applet in system tray, drkonqi shows powerdevil crash
Comment 2 Patrick Silva 2019-02-24 05:43:47 UTC
Here are backtraces from neon dev unstable...


Thread 14 (Thread 0x7fa159974700 (LWP 1557)):
#0  QThreadData::current (createIfNecessary=createIfNecessary@entry=true)
    at thread/qthread_unix.cpp:258
#1  0x00007fa16a3ec03a in postEventSourcePrepare (s=0x7fa14c004ba0, timeout=0x7fa159973b34)
    at kernel/qeventdispatcher_glib.cpp:252
#2  0x00007fa163910a98 in g_main_context_prepare () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fa16391146b in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fa16391164c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fa16a3ec15b in QEventDispatcherGlib::processEvents (this=0x7fa14c000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:424
#6  0x00007fa16a38d64a in QEventLoop::exec (this=this@entry=0x7fa159973d00, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#7  0x00007fa16a1b541a in QThread::exec (this=this@entry=0x55fa2d797120) at thread/qthread.cpp:531
#8  0x00007fa16dfad2e5 in QQmlThreadPrivate::run (this=0x55fa2d797120) at qml/ftw/qqmlthread.cpp:148
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2d797120) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa159974700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 13 (Thread 0x7fa120a7b700 (LWP 1662)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa30ad43e0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa30ad4390, cond=0x55fa30ad43b8)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa30ad43b8, mutex=0x55fa30ad4390) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa30ad4390)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa31184e70, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa31184e78, 
    mutex=mutex@entry=0x55fa31184e70, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa31184e68)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa31184df0)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa31184df0)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa31184df0) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa120a7b700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 12 (Thread 0x7fa0eae1d700 (LWP 5616)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa30d50140) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa30d500f0, cond=0x55fa30d50118)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa30d50118, mutex=0x55fa30d500f0) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa30d500f0)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa2d95b300, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa2d95b308, 
    mutex=mutex@entry=0x55fa2d95b300, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa2d95b2f8)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa2d95b280)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa2d95b280)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2d95b280) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa0eae1d700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 11 (Thread 0x7fa113fff700 (LWP 2357)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa30ad9630) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa30ad95e0, cond=0x55fa30ad9608)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa30ad9608, mutex=0x55fa30ad95e0) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa30ad95e0)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa30ac2c50, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa30ac2c58, 
    mutex=mutex@entry=0x55fa30ac2c50, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa30ac2c48)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa30ac2bd0)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa30ac2bd0)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa30ac2bd0) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa113fff700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7fa0ea61c700 (LWP 1674)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa32c8fe44) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa32c8fdf0, cond=0x55fa32c8fe18)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa32c8fe18, mutex=0x55fa32c8fdf0) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa32c8fdf0)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa30f14c40, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa30f14c48, 
    mutex=mutex@entry=0x55fa30f14c40, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa30f14c38)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa30f14bc0)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa30f14bc0)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa30f14bc0) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa0ea61c700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7fa1074d4700 (LWP 1619)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa2ed9aef0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa2ed9aea0, cond=0x55fa2ed9aec8)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa2ed9aec8, mutex=0x55fa2ed9aea0) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa2ed9aea0)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa2eff0920, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa2eff0928, 
    mutex=mutex@entry=0x55fa2eff0920, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa2eff0918)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa2eff08a0)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa2eff08a0)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2eff08a0) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa1074d4700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fa17067e880 (LWP 1474)):
#0  0x00007fa169aa9bf9 in __GI___poll (fds=fds@entry=0x7ffe71594108, nfds=nfds@entry=1, 
    timeout=timeout@entry=1000) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fa16d0d8bf4 in poll (__timeout=1000, __nfds=1, __fds=0x7ffe71594108)
    at /usr/include/x86_64-linux-gnu/bits/poll2.h:46
#2  pollDrKonqiSocket (pid=6126, sockfd=4) at ./src/kcrash.cpp:909
#3  0x00007fa16d0d91f1 in startProcessInternal (argc=argc@entry=20, argv=argv@entry=0x7ffe715942a0, 
    waitAndExit=waitAndExit@entry=true, directly=directly@entry=false) at ./src/kcrash.cpp:684
#4  0x00007fa16d0d9a6e in KCrash::startProcess (argc=argc@entry=20, argv=argv@entry=0x7ffe715942a0, 
    waitAndExit=waitAndExit@entry=true) at ./src/kcrash.cpp:637
#5  0x00007fa16d0d9f97 in KCrash::defaultCrashHandler (sig=11) at ./src/kcrash.cpp:535
#6  <signal handler called>
#7  0x00007fa13d9bbead in QtWaylandClient::QWaylandXdgSurface::setPopup (this=0x55fa38ef0940, 
    parent=0x55fa2e481d70, device=0x55fa2d6b0410, serial=2226, grab=<optimized out>)
    at qwaylandxdgshell.cpp:348
#8  0x00007fa13d9bc40a in QtWaylandClient::QWaylandXdgShell::getXdgSurface (this=0x55fa2d7b7720, 
    window=0x55fa39202a90) at qwaylandxdgshell.cpp:407
#9  0x00007fa15d6917d4 in QtWaylandClient::QWaylandWindow::initWindow (
    this=this@entry=0x55fa39202a90) at qwaylandwindow.cpp:142
#10 0x00007fa15d691e09 in QtWaylandClient::QWaylandWindow::setVisible (
    this=this@entry=0x55fa39202a90, visible=<optimized out>) at qwaylandwindow.cpp:389
#11 0x00007fa152ce5884 in QtWaylandClient::QWaylandEglWindow::setVisible (this=0x55fa39202a90, 
    visible=<optimized out>)
    at ../../../../hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp:164
#12 0x00007fa16a9626a4 in QWindowPrivate::setVisible (this=0x55fa39202930, 
    visible=visible@entry=true) at kernel/qwindow.cpp:402
#13 0x00007fa16bd42d6d in QWidgetWindow::setNativeWindowVisibility (this=this@entry=0x55fa376778d0, 
    visible=visible@entry=true) at kernel/qwidgetwindow.cpp:205
#14 0x00007fa16bd1d256 in QWidgetPrivate::show_sys (this=this@entry=0x55fa394b3280)
    at kernel/qwidget.cpp:8105
#15 0x00007fa16bd262bb in QWidgetPrivate::show_helper (this=this@entry=0x55fa394b3280)
    at kernel/qwidget.cpp:8028
#16 0x00007fa16bd293eb in QWidget::setVisible (this=0x55fa3735efa0, visible=<optimized out>)
    at kernel/qwidget.cpp:8322
#17 0x00007fa16be5d9a0 in QMenu::popup (this=0x55fa3735efa0, p=..., atAction=atAction@entry=0x0)
    at widgets/qmenu.cpp:2596
#18 0x00007fa149cad297 in QMenuProxy::openInternal (this=this@entry=0x55fa3969cd70, pos=...)
    at ./src/declarativeimports/plasmacomponents/qmenu.cpp:459
#19 0x00007fa149cadcdc in QMenuProxy::open (this=0x55fa3969cd70, x=12, y=20)
    at ./src/declarativeimports/plasmacomponents/qmenu.cpp:336
#20 0x00007fa149cb1ad1 in QMenuProxy::qt_static_metacall (_o=_o@entry=0x55fa3969cd70, 
    _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=9, _a=_a@entry=0x7ffe715950a0)
    at ./obj-x86_64-linux-gnu/src/declarativeimports/plasmacomponents/plasmacomponentsplugin_autogen/EWIEGA46WW/moc_qmenu.cpp:194
#21 0x00007fa149cb2105 in QMenuProxy::qt_metacall (this=0x55fa3969cd70, 
    _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7ffe715950a0)
    at ./obj-x86_64-linux-gnu/src/declarativeimports/plasmacomponents/plasmacomponentsplugin_autogen/EWIEGA46WW/moc_qmenu.cpp:380
#22 0x00007fa16df52af9 in QQmlObjectOrGadget::metacall (this=this@entry=0x7ffe715953e0, 
    type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=14, 
    argv=<optimized out>) at qml/qqmlpropertycache.cpp:1735
#23 0x00007fa16de54bf5 in CallMethod (object=..., index=<optimized out>, 
    returnType=returnType@entry=43, argCount=<optimized out>, argTypes=<optimized out>, 
    engine=engine@entry=0x55fa2d87c430, callArgs=<optimized out>, callType=<optimized out>)
    at jsruntime/qv4qobjectwrapper.cpp:1213
#24 0x00007fa16de5655f in CallPrecise (object=..., data=..., engine=engine@entry=0x55fa2d87c430, 
    callArgs=callArgs@entry=0x7fa158d35778, callType=callType@entry=QMetaObject::InvokeMetaMethod)
    at jsruntime/qv4qobjectwrapper.cpp:1475
#25 0x00007fa16de575ec in CallOverloaded (callType=QMetaObject::InvokeMetaMethod, 
    propertyCache=0x55fa2de3be80, callArgs=0x7fa158d35778, engine=0x55fa2d87c430, data=..., 
    object=...) at jsruntime/qv4qobjectwrapper.cpp:1549
#26 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=<optimized out>, 
    argv=<optimized out>, argc=<optimized out>) at jsruntime/qv4qobjectwrapper.cpp:2019
#27 0x00007fa16dedd3b9 in QV4::FunctionObject::call (argc=2, argv=0x7fa158d35720, 
    thisObject=0x7fa158d35708, this=<optimized out>) at jsruntime/qv4functionobject_p.h:202
#28 QV4::Runtime::method_callProperty (engine=0x55fa2d87c430, base=<optimized out>, 
    nameIndex=<optimized out>, argv=0x7fa158d35720, argc=<optimized out>)
    at jsruntime/qv4runtime.cpp:1385
#29 0x00007fa11047680d in ?? ()
#30 0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fa14b1a0700 (LWP 1579)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa2da66a48) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa2da669f8, cond=0x55fa2da66a20)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa2da66a20, mutex=0x55fa2da669f8) at pthread_cond_wait.c:655
#3  0x00007fa1506eeb1b in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007fa1506ee847 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007fa166ccb6db in start_thread (arg=0x7fa14b1a0700) at pthread_create.c:463
#6  0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7fa13d9b3700 (LWP 1585)):
#0  0x00007fa169aa9bf9 in __GI___poll (fds=0x7fa138005290, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fa163911539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fa16391164c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fa16a3ec13f in QEventDispatcherGlib::processEvents (this=0x7fa138000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:422
#4  0x00007fa16a38d64a in QEventLoop::exec (this=this@entry=0x7fa13d9b2cb0, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007fa16a1b541a in QThread::exec (this=this@entry=0x55fa2d758390) at thread/qthread.cpp:531
#6  0x00007fa16e4721c6 in QQuickPixmapReader::run (this=0x55fa2d758390)
    at util/qquickpixmapcache.cpp:949
#7  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2d758390) at thread/qthread_unix.cpp:361
#8  0x00007fa166ccb6db in start_thread (arg=0x7fa13d9b3700) at pthread_create.c:463
#9  0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fa137d13700 (LWP 1586)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa2d7664e0) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa2d766490, cond=0x55fa2d7664b8)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa2d7664b8, mutex=0x55fa2d766490) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa2d766490)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa2d990ec0, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa2d990ec8, 
    mutex=mutex@entry=0x55fa2d990ec0, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa2d990eb8)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa2d990e40)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa2d990e40)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2d990e40) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa137d13700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fa1122e6700 (LWP 1635)):
#0  0x00007fa166cd19f3 in futex_wait_cancelable (private=<optimized out>, expected=0, 
    futex_word=0x55fa3096ae84) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55fa3096ae30, cond=0x55fa3096ae58)
    at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55fa3096ae58, mutex=0x55fa3096ae30) at pthread_cond_wait.c:655
#3  0x00007fa16a1bdb4b in QWaitConditionPrivate::wait (deadline=..., this=0x55fa3096ae30)
    at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55fa2e385250, deadline=...)
    at thread/qwaitcondition_unix.cpp:225
#5  0x00007fa16a1bde59 in QWaitCondition::wait (this=this@entry=0x55fa2e385258, 
    mutex=mutex@entry=0x55fa2e385250, time=time@entry=18446744073709551615)
    at thread/qwaitcondition_unix.cpp:208
#6  0x00007fa16e4f7da8 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55fa2e385248)
    at scenegraph/qsgthreadedrenderloop.cpp:245
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55fa2e3851d0)
    at scenegraph/qsgthreadedrenderloop.cpp:709
#8  0x00007fa16e4f81da in QSGRenderThread::run (this=0x55fa2e3851d0)
    at scenegraph/qsgthreadedrenderloop.cpp:738
#9  0x00007fa16a1b6bc2 in QThreadPrivate::start (arg=0x55fa2e3851d0) at thread/qthread_unix.cpp:361
#10 0x00007fa166ccb6db in start_thread (arg=0x7fa1122e6700) at pthread_create.c:463
#11 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fa15b3a9700 (LWP 1485)):
#0  0x00007fa16a3ec04d in postEventSourcePrepare (s=0x7fa154004fd0, timeout=0x7fa15b3a8b24)
    at kernel/qeventdispatcher_glib.cpp:258
#1  0x00007fa163910a98 in g_main_context_prepare () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fa16391146b in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fa16391164c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fa16a3ec15b in QEventDispatcherGlib::processEvents (this=0x7fa154000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007fa16a38d64a in QEventLoop::exec (this=this@entry=0x7fa15b3a8cf0, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#6  0x00007fa16a1b541a in QThread::exec (
    this=this@entry=0x7fa16b70ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:531
#7  0x00007fa16b493015 in QDBusConnectionManager::run (
    this=0x7fa16b70ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at qdbusconnection.cpp:178
#8  0x00007fa16a1b6bc2 in QThreadPrivate::start (
    arg=0x7fa16b70ad80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at thread/qthread_unix.cpp:361
#9  0x00007fa166ccb6db in start_thread (arg=0x7fa15b3a9700) at pthread_create.c:463
#10 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7fa121a7d700 (LWP 1607)):
#0  0x00007fa169aa9bf9 in __GI___poll (fds=0x55fa2ebf71b0, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007fa163911539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fa1639118d2 in g_main_loop_run () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fa1343ac026 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007fa163939105 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fa166ccb6db in start_thread (arg=0x7fa121a7d700) at pthread_create.c:463
#6  0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7fa12227e700 (LWP 1606)):
#0  0x00007fa163916e11 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fa163917eac in g_log_default_handler () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fa16391813d in g_logv () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fa1639182af in g_log () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fa1343f16f7 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#5  0x00007fa1343f17a5 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6  0x00007fa1639111f5 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#7  0x00007fa1639115c0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#8  0x00007fa16391164c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007fa163911691 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007fa163939105 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007fa166ccb6db in start_thread (arg=0x7fa12227e700) at pthread_create.c:463
#12 0x00007fa169ab688f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Comment 3 Patrick Silva 2019-02-24 05:44:28 UTC
Thread 6 (Thread 0x7f76493f9700 (LWP 1544)):
#0  0x00007f7659dbdbf9 in __GI___poll (fds=0x556c1a74c500, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f76549a6539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f76549a68d2 in g_main_loop_run () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f764a7b4026 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007f76549ce105 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f7656cd76db in start_thread (arg=0x7f76493f9700) at pthread_create.c:463
#6  0x00007f7659dca88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f763b1d8700 (LWP 1569)):
#0  0x00007f7659dbdbf9 in __GI___poll (fds=0x7f762c0020a0, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f76549a6539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f76549a664c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f765a70015b in QEventDispatcherGlib::processEvents (this=0x7f762c000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f765a6a164a in QEventLoop::exec (this=this@entry=0x7f763b1d7d20, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f765a4c941a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f765a4cabc2 in QThreadPrivate::start (arg=0x556c1a7f6e90) at thread/qthread_unix.cpp:361
#7  0x00007f7656cd76db in start_thread (arg=0x7f763b1d8700) at pthread_create.c:463
#8  0x00007f7659dca88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f764bb15700 (LWP 1542)):
#0  0x00007f7659dbdbf9 in __GI___poll (fds=0x7f7644014140, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f76549a6539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f76549a664c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f765a70015b in QEventDispatcherGlib::processEvents (this=0x7f7644000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f765a6a164a in QEventLoop::exec (this=this@entry=0x7f764bb14cf0, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f765a4c941a in QThread::exec (
    this=this@entry=0x7f765ade5d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:531
#6  0x00007f765ab6e015 in QDBusConnectionManager::run (
    this=0x7f765ade5d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at qdbusconnection.cpp:178
#7  0x00007f765a4cabc2 in QThreadPrivate::start (
    arg=0x7f765ade5d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at thread/qthread_unix.cpp:361
#8  0x00007f7656cd76db in start_thread (arg=0x7f764bb15700) at pthread_create.c:463
#9  0x00007f7659dca88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f763b9d9700 (LWP 1568)):
#0  0x00007f76549ec064 in g_mutex_unlock () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f76549a5ec8 in g_main_context_check () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f76549a64e0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f76549a664c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f765a70015b in QEventDispatcherGlib::processEvents (this=0x7f7634000b20, flags=...)
    at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f765a6a164a in QEventLoop::exec (this=this@entry=0x7f763b9d8d20, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#6  0x00007f765a4c941a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#7  0x00007f765a4cabc2 in QThreadPrivate::start (arg=0x556c1a7f51c0) at thread/qthread_unix.cpp:361
#8  0x00007f7656cd76db in start_thread (arg=0x7f763b9d9700) at pthread_create.c:463
#9  0x00007f7659dca88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f7649bfa700 (LWP 1543)):
#0  0x00007f7659dbdbf9 in __GI___poll (fds=0x556c1a732d90, nfds=1, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f76549a6539 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f76549a664c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f76549a6691 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f76549ce105 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f7656cd76db in start_thread (arg=0x7f7649bfa700) at pthread_create.c:463
#6  0x00007f7659dca88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f765d202340 (LWP 1521)):
#0  __GI_raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007f765ce1c08d in KCrash::defaultCrashHandler(int) ()
   from /usr/lib/x86_64-linux-gnu/libKF5Crash.so.5
#2  <signal handler called>
#3  QHashData::nextNode (node=node@entry=0x556c1a7d38d0) at tools/qhash.cpp:591
#4  0x00007f765cbe74f3 in QHash<unsigned int, QString>::const_iterator::operator++ (
    this=<synthetic pointer>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qhash.h:395
#5  PowerDevil::PolicyAgent::onServiceUnregistered (this=0x556c1a77f4b0, serviceName=...)
    at ./daemon/powerdevilpolicyagent.cpp:384
#6  0x00007f765cc01839 in PowerDevil::PolicyAgent::qt_static_metacall (_o=<optimized out>, 
    _id=<optimized out>, _a=0x7ffdae2db350, _c=<optimized out>)
    at ./obj-x86_64-linux-gnu/daemon/powerdevilcore_autogen/EWIEGA46WW/moc_powerdevilpolicyagent.cpp:156
#7  0x00007f765a6d2e25 in QMetaObject::activate (sender=0x556c1a753c50, 
    signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, 
    argv=argv@entry=0x7ffdae2db350) at kernel/qobject.cpp:3778
#8  0x00007f765a6d34f7 in QMetaObject::activate (sender=<optimized out>, 
    m=m@entry=0x7f765ade46c0 <QDBusServiceWatcher::staticMetaObject>, 
    local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffdae2db350)
    at kernel/qobject.cpp:3631
#9  0x00007f765abc9a25 in QDBusServiceWatcher::serviceUnregistered (this=<optimized out>, _t1=...)
    at .moc/moc_qdbusservicewatcher.cpp:234
#10 0x00007f765abc9b95 in QDBusServiceWatcherPrivate::_q_serviceOwnerChanged (this=<optimized out>, 
    service=..., oldOwner=..., newOwner=...) at qdbusservicewatcher.cpp:80
#11 0x00007f765abca24f in QDBusServiceWatcher::qt_static_metacall (_o=_o@entry=0x556c1a753c50, 
    _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=3, _a=_a@entry=0x7ffdae2db4c0)
    at .moc/moc_qdbusservicewatcher.cpp:115
#12 0x00007f765abca5b5 in QDBusServiceWatcher::qt_metacall (this=0x556c1a753c50, 
    _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7ffdae2db4c0)
    at .moc/moc_qdbusservicewatcher.cpp:196
#13 0x00007f765ab79128 in QDBusConnectionPrivate::deliverCall (this=<optimized out>, 
    object=<optimized out>, msg=..., metaTypes=..., slotIdx=<optimized out>)
    at qdbusintegrator.cpp:991
#14 0x00007f765a6d3992 in QObject::event (this=0x556c1a753c50, e=<optimized out>)
    at kernel/qobject.cpp:1249
#15 0x00007f765a6a3328 in QCoreApplication::notifyInternal2 (receiver=0x556c1a753c50, 
    event=0x7f764401c4d0) at kernel/qcoreapplication.cpp:1061
#16 0x00007f765a6a34fe in QCoreApplication::sendEvent (receiver=<optimized out>, 
    event=event@entry=0x7f764401c4d0) at kernel/qcoreapplication.cpp:1451
#17 0x00007f765a6a5e87 in QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, 
    event_type=event_type@entry=0, data=0x556c1a7030d0) at kernel/qcoreapplication.cpp:1800
#18 0x00007f765a6a6428 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, 
    event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1654
#19 0x00007f765a700b23 in postEventSourceDispatch (s=0x556c1a70cae0)
    at kernel/qeventdispatcher_glib.cpp:276
#20 0x00007f76549a6387 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007f76549a65c0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007f76549a664c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007f765a70013f in QEventDispatcherGlib::processEvents (this=0x556c1a715010, flags=...)
    at kernel/qeventdispatcher_glib.cpp:422
#24 0x00007f765a6a164a in QEventLoop::exec (this=this@entry=0x7ffdae2db8e0, flags=..., 
    flags@entry=...) at kernel/qeventloop.cpp:225
#25 0x00007f765a6aa800 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1364
#26 0x0000556c1a35240f in main (argc=<optimized out>, argv=<optimized out>)
    at ./daemon/powerdevilapp.cpp:220
Comment 4 David Edmundson 2019-09-29 13:42:27 UTC
>#7  0x00007fa13d9bbead in QtWaylandClient::QWaylandXdgSurface::setPopup (this=0x55fa38ef0940, 

More setPopup stuff

There were lots of commits in Qt related to this and 5.12 is rather old. Marking as upstream.