Bug 419493

Summary: Standalone "Display configuration" kcm crashed on Wayland when I clicked on "Identify" button
Product: [Applications] systemsettings Reporter: Patrick Silva <bugseforuns>
Component: kcm_kscreenAssignee: kscreen-bugs-null <kscreen-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: plasma-bugs
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:

Description Patrick Silva 2020-04-01 13:02:26 UTC
SUMMARY
I was using Wayland session with an external monitor connected to hdmi port,
multi-screen mode was set to "Unify outputs" and standalone "Display configuration" kcm was open. Then I switched to "Switch to external screen" mode, clicked on "Identify" button of "Display configuration" kcm and such kcm crashed.

Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.18.80
KDE Frameworks Version: 5.69.0
Qt Version: 5.14.1
Kernel Version: 5.3.0-45-generic
OS Type: 64-bit
Processors: 4 × Intel® Core™ i3-3110M CPU @ 2.40GHz
Memory: 7,7 GiB of RAM
Graphics Processor: Mesa DRI Intel® Ivybridge Mobile


Thread 9 (Thread 0x7f3d6ee83700 (LWP 2908)):
#0  0x00007f3d8f8e39f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55e746983178)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55e746983128, cond=0x55e746983150) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55e746983150, mutex=0x55e746983128) at pthread_cond_wait.c:655
#3  0x00007f3d70520ecb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f3d70520ac7 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d6ee83700) at pthread_create.c:463
#6  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f3d58b7c700 (LWP 2947)):
#0  0x00007f3d92a18bf9 in __GI___poll (fds=0x7f3d540576d0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3d8ce475c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3d8ce476dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3d9337f0bc in QEventDispatcherGlib::processEvents (this=0x7f3d5404cd40, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7f3d58b7bd80, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3d9312f317 in QThread::exec (this=this@entry=0x55e747fc8ed0) at thread/qthread.cpp:536
#6  0x00007f3d90cb1605 in QQmlThreadPrivate::run (this=0x55e747fc8ed0) at qml/ftw/qqmlthread.cpp:155
#7  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e747fc8ed0) at thread/qthread_unix.cpp:342
#8  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d58b7c700) at pthread_create.c:463
#9  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f3d535a8700 (LWP 2949)):
#0  0x00007f3d8f8e39f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55e74c04a440)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55e74c04a3f0, cond=0x55e74c04a418) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55e74c04a418, mutex=0x55e74c04a3f0) at pthread_cond_wait.c:655
#3  0x00007f3d93136d9b in QWaitConditionPrivate::wait (deadline=..., this=0x55e74c04a3f0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55e747cee5f0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f3d93136f19 in QWaitCondition::wait (this=this@entry=0x55e747cee5f8, mutex=mutex@entry=0x55e747cee5f0, 
    time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f3d912041d3 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55e747cee5e8) at scenegraph/qsgthreadedrenderloop.cpp:255
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55e747cee550) at scenegraph/qsgthreadedrenderloop.cpp:905
#8  0x00007f3d91204631 in QSGRenderThread::run (this=0x55e747cee550) at scenegraph/qsgthreadedrenderloop.cpp:1000
#9  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e747cee550) at thread/qthread_unix.cpp:342
#10 0x00007f3d8f8dd6db in start_thread (arg=0x7f3d535a8700) at pthread_create.c:463
#11 0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f3d48ac4700 (LWP 2948)):
#0  0x00007f3d8f8e39f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55e747fa1430)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x55e747fa13e0, cond=0x55e747fa1408) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x55e747fa1408, mutex=0x55e747fa13e0) at pthread_cond_wait.c:655
#3  0x00007f3d93136d9b in QWaitConditionPrivate::wait (deadline=..., this=0x55e747fa13e0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait (this=<optimized out>, mutex=0x55e747cee530, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f3d93136f19 in QWaitCondition::wait (this=this@entry=0x55e747cee538, mutex=mutex@entry=0x55e747cee530, 
    time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:208
#6  0x00007f3d912041d3 in QSGRenderThreadEventQueue::takeEvent (wait=true, this=0x55e747cee528) at scenegraph/qsgthreadedrenderloop.cpp:255
#7  QSGRenderThread::processEventsAndWaitForMore (this=this@entry=0x55e747cee490) at scenegraph/qsgthreadedrenderloop.cpp:905
#8  0x00007f3d91204631 in QSGRenderThread::run (this=0x55e747cee490) at scenegraph/qsgthreadedrenderloop.cpp:1000
#9  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e747cee490) at thread/qthread_unix.cpp:342
#10 0x00007f3d8f8dd6db in start_thread (arg=0x7f3d48ac4700) at pthread_create.c:463
#11 0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f3d50cca700 (LWP 2946)):
#0  0x00007f3d92a18bf9 in __GI___poll (fds=0x7f3d44067d60, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3d8ce475c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3d8ce476dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3d9337f0bc in QEventDispatcherGlib::processEvents (this=0x7f3d44067e50, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7f3d50cc9d80, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3d9312f317 in QThread::exec (this=this@entry=0x55e7474886b0) at thread/qthread.cpp:536
#6  0x00007f3d90cb1605 in QQmlThreadPrivate::run (this=0x55e7474886b0) at qml/ftw/qqmlthread.cpp:155
#7  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e7474886b0) at thread/qthread_unix.cpp:342
#8  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d50cca700) at pthread_create.c:463
#9  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f3d60973700 (LWP 2909)):
#0  0x00007f3d92a18bf9 in __GI___poll (fds=0x7f3d5c0029e0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3d8ce475c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3d8ce476dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3d9337f0bc in QEventDispatcherGlib::processEvents (this=0x7f3d5c000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7f3d60972da0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3d9312f317 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:536
#6  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e746232e70) at thread/qthread_unix.cpp:342
#7  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d60973700) at pthread_create.c:463
#8  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f3d7bfff700 (LWP 2907)):
#0  0x00007f3d92a18bf9 in __GI___poll (fds=0x7f3d74002de0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3d8ce475c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3d8ce476dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3d9337f0bc in QEventDispatcherGlib::processEvents (this=0x7f3d74000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7f3d7bffed80, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3d9312f317 in QThread::exec (this=this@entry=0x55e74628b590) at thread/qthread.cpp:536
#6  0x00007f3d90cb1605 in QQmlThreadPrivate::run (this=0x55e74628b590) at qml/ftw/qqmlthread.cpp:155
#7  0x00007f3d931307ec in QThreadPrivate::start (arg=0x55e74628b590) at thread/qthread_unix.cpp:342
#8  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d7bfff700) at pthread_create.c:463
#9  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f3d81e24700 (LWP 2906)):
#0  0x00007f3d92a18bf9 in __GI___poll (fds=0x7f3d7c002de0, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3d8ce475c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3d8ce476dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3d9337f0bc in QEventDispatcherGlib::processEvents (this=0x7f3d7c000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7f3d81e23d70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3d9312f317 in QThread::exec (this=this@entry=0x7f3d95049da0 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at thread/qthread.cpp:536
#6  0x00007f3d94dd1555 in QDBusConnectionManager::run (this=0x7f3d95049da0 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at qdbusconnection.cpp:179
#7  0x00007f3d931307ec in QThreadPrivate::start (arg=0x7f3d95049da0 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
    at thread/qthread_unix.cpp:342
#8  0x00007f3d8f8dd6db in start_thread (arg=0x7f3d81e24700) at pthread_create.c:463
#9  0x00007f3d92a2588f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f3d9660f800 (LWP 2905)):
#0  QWeakPointer<QObject>::internalData (this=0x55e700000004) at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:701
#1  QPointer<QScreen>::data (this=0x55e700000004) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:77
#2  QPointer<QScreen>::operator QScreen* (this=0x55e700000004) at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:83
#3  QPlatformScreen::screen (this=this@entry=0x55e7461ef400) at kernel/qplatformscreen.cpp:154
#4  0x00007f3d860546a0 in QtWaylandClient::QWaylandWindow::handleScreensChanged (this=0x55e7467c07b0) at qwaylandwindow.cpp:969
#5  0x00007f3d9335afe7 in QtPrivate::QSlotObjectBase::call (a=0x7ffe02135f70, r=0x55e7467c07b0, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#6  doActivate<false> (sender=0x55e7467b9650, signal_index=3, argv=0x7ffe02135f70) at kernel/qobject.cpp:3870
#7  0x00007f3d933558a2 in QMetaObject::activate (sender=sender@entry=0x55e7467b9650, 
    m=m@entry=0x7f3d86312d20 <QtWaylandClient::QWaylandSurface::staticMetaObject>, local_signal_index=local_signal_index@entry=0, 
    argv=argv@entry=0x0) at kernel/qobject.cpp:3930
#8  0x00007f3d86072840 in QtWaylandClient::QWaylandSurface::screensChanged (this=this@entry=0x55e7467b9650)
    at .moc/moc_qwaylandsurface_p.cpp:155
#9  0x00007f3d8605a7a4 in QtWaylandClient::QWaylandSurface::surface_enter (this=0x55e7467b9650, output=0x55e7461ef4b0) at qwaylandsurface.cpp:97
#10 0x00007f3d85548dae in ffi_call_unix64 () from /usr/lib/x86_64-linux-gnu/libffi.so.6
#11 0x00007f3d8554871f in ffi_call () from /usr/lib/x86_64-linux-gnu/libffi.so.6
#12 0x00007f3d85bd7e24 in wl_closure_invoke (closure=closure@entry=0x55e74c310940, flags=flags@entry=1, target=<optimized out>, 
    target@entry=0x55e7467f3270, opcode=opcode@entry=0, data=<optimized out>) at ../src/connection.c:1006
#13 0x00007f3d85bd4659 in dispatch_event (display=display@entry=0x55e7461e6e00, queue=<optimized out>) at ../src/wayland-client.c:1427
#14 0x00007f3d85bd5b24 in dispatch_queue (queue=0x55e7461e6ec8, display=0x55e7461e6e00) at ../src/wayland-client.c:1573
#15 wl_display_dispatch_queue_pending (display=0x55e7461e6e00, queue=0x55e7461e6ec8) at ../src/wayland-client.c:1815
#16 0x00007f3d85bd5b7c in wl_display_dispatch_pending (display=<optimized out>) at ../src/wayland-client.c:1878
#17 0x00007f3d8604c642 in QtWaylandClient::QWaylandDisplay::flushRequests (this=0x55e7461e1810) at qwaylanddisplay.cpp:208
#18 0x00007f3d9335adc9 in doActivate<false> (sender=0x55e74620f130, signal_index=4, argv=0x7ffe021364a0) at kernel/qobject.cpp:3882
#19 0x00007f3d933558a2 in QMetaObject::activate (sender=sender@entry=0x55e74620f130, 
    m=m@entry=0x7f3d937ed240 <QAbstractEventDispatcher::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0)
    at kernel/qobject.cpp:3930
#20 0x00007f3d9331c4b3 in QAbstractEventDispatcher::awake (this=this@entry=0x55e74620f130) at .moc/moc_qabstracteventdispatcher.cpp:149
#21 0x00007f3d9337f0fb in QEventDispatcherGlib::processEvents (this=0x55e74620f130, flags=...) at kernel/qeventdispatcher_glib.cpp:430
#22 0x00007f3d9331e63a in QEventLoop::exec (this=this@entry=0x7ffe021365c0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#23 0x00007f3d93327db0 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1400
#24 0x000055e745608211 in main (_argc=<optimized out>, _argv=<optimized out>) at ./kcmshell/main.cpp:329
Exception ignored in: <gdb.GdbOutputFile object at 0x7f39dfdeac88>
Traceback (most recent call last):
  File "/usr/share/gdb/python/gdb/__init__.py", line 43, in flush
    def flush(self):
KeyboardInterrupt
Comment 1 Christoph Feck 2020-04-21 08:20:52 UTC

*** This bug has been marked as a duplicate of bug 419492 ***