SUMMARY STEPS TO REPRODUCE 1. Click the touchpad KCM. Only happens sometimes, not yet sure what it depends on. OBSERVED RESULT Crash: Application: Параметры системы (systemsettings5), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 29 return SYSCALL_CANCEL (poll, fds, nfds, timeout); [Current thread is 1 (Thread 0x7fd9a2a1e940 (LWP 18470))] Thread 6 (Thread 0x7fd969fc3700 (LWP 18478)): #0 0x00007fd99df62c98 in __GI___libc_read (fd=15, buf=0x7fd969fc2a30, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:26 #1 0x00007fd996f9dca0 in ?? () from /usr/lib64/libglib-2.0.so.0 #2 0x00007fd996f58cb8 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0 #3 0x00007fd996f59150 in ?? () from /usr/lib64/libglib-2.0.so.0 #4 0x00007fd996f592bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #5 0x00007fd99e8a699b in QEventDispatcherGlib::processEvents (this=0x7fd964000b10, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #6 0x00007fd99e847c0a in QEventLoop::exec (this=this@entry=0x7fd969fc2c50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225 #7 0x00007fd99e66f04a in QThread::exec (this=this@entry=0x55a9a5ace910) at thread/qthread.cpp:531 #8 0x00007fd99c43cd95 in QQmlThreadPrivate::run (this=0x55a9a5ace910) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/ftw/qqmlthread.cpp:148 #9 0x00007fd99e6707f2 in QThreadPrivate::start (arg=0x55a9a5ace910) at thread/qthread_unix.cpp:361 #10 0x00007fd9995e7569 in start_thread (arg=0x7fd969fc3700) at pthread_create.c:465 #11 0x00007fd99df719ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 5 (Thread 0x7fd9728fd700 (LWP 18477)): #0 0x00007fd996f9efd9 in g_mutex_lock () from /usr/lib64/libglib-2.0.so.0 #1 0x00007fd996f581d4 in g_main_context_release () from /usr/lib64/libglib-2.0.so.0 #2 0x00007fd996f59166 in ?? () from /usr/lib64/libglib-2.0.so.0 #3 0x00007fd996f592bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #4 0x00007fd99e8a699b in QEventDispatcherGlib::processEvents (this=0x7fd96c000b10, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #5 0x00007fd99e847c0a in QEventLoop::exec (this=this@entry=0x7fd9728fcc50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225 #6 0x00007fd99e66f04a in QThread::exec (this=this@entry=0x55a9a551b9e0) at thread/qthread.cpp:531 #7 0x00007fd99c43cd95 in QQmlThreadPrivate::run (this=0x55a9a551b9e0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/ftw/qqmlthread.cpp:148 #8 0x00007fd99e6707f2 in QThreadPrivate::start (arg=0x55a9a551b9e0) at thread/qthread_unix.cpp:361 #9 0x00007fd9995e7569 in start_thread (arg=0x7fd9728fd700) at pthread_create.c:465 #10 0x00007fd99df719ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 4 (Thread 0x7fd97a3ff700 (LWP 18474)): #0 0x00007fd9995ed8ad in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55a9a50e559c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88 #1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55a9a50e5548, cond=0x55a9a50e5570) at pthread_cond_wait.c:502 #2 __pthread_cond_wait (cond=0x55a9a50e5570, mutex=0x55a9a50e5548) at pthread_cond_wait.c:655 #3 0x00007fd97b0a592b in ?? () from /usr/lib64/dri/i965_dri.so #4 0x00007fd97b0a5637 in ?? () from /usr/lib64/dri/i965_dri.so #5 0x00007fd9995e7569 in start_thread (arg=0x7fd97a3ff700) at pthread_create.c:465 #6 0x00007fd99df719ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 3 (Thread 0x7fd982647700 (LWP 18473)): #0 0x00007fd99df6719b in __GI___poll (fds=0x7fd97c002de0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007fd996f591a9 in ?? () from /usr/lib64/libglib-2.0.so.0 #2 0x00007fd996f592bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #3 0x00007fd99e8a699b in QEventDispatcherGlib::processEvents (this=0x7fd97c000b10, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #4 0x00007fd99e847c0a in QEventLoop::exec (this=this@entry=0x7fd982646c40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225 #5 0x00007fd99e66f04a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531 #6 0x00007fd99ed16cd5 in ?? () from /usr/lib64/libQt5DBus.so.5 #7 0x00007fd99e6707f2 in QThreadPrivate::start (arg=0x7fd99ef8ed80) at thread/qthread_unix.cpp:361 #8 0x00007fd9995e7569 in start_thread (arg=0x7fd982647700) at pthread_create.c:465 #9 0x00007fd99df719ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 2 (Thread 0x7fd98e8cd700 (LWP 18472)): #0 0x00007fd99df6719b in __GI___poll (fds=0x7fd98e8ccb78, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x00007fd9991ac307 in ?? () from /usr/lib64/libxcb.so.1 #2 0x00007fd9991adf3a in xcb_wait_for_event () from /usr/lib64/libxcb.so.1 #3 0x00007fd9910953d8 in QXcbEventQueue::run (this=0x55a9a5070380) at qxcbeventqueue.cpp:228 #4 0x00007fd99e6707f2 in QThreadPrivate::start (arg=0x55a9a5070380) at thread/qthread_unix.cpp:361 #5 0x00007fd9995e7569 in start_thread (arg=0x7fd98e8cd700) at pthread_create.c:465 #6 0x00007fd99df719ef in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 1 (Thread 0x7fd9a2a1e940 (LWP 18470)): [KCrash Handler] #6 0x00007fd960332784 in TouchpadConfigContainer::sizeHint (this=<optimized out>) at /usr/src/debug/plasma5-desktop-5.15.90-lp151.360.1.x86_64/kcms/touchpad/src/kcm/touchpadconfigcontainer.cpp:70 #7 0x00007fd99f925b34 in QWidgetItemV2::updateCacheIfNecessary (this=0x55a9ab7e0e20) at kernel/qlayoutitem.cpp:724 #8 0x00007fd99f925e1d in QWidgetItemV2::maximumSize (this=0x55a9ab7e0e20) at kernel/qlayoutitem.cpp:812 #9 0x00007fd99f91a3a2 in QBoxLayoutPrivate::setupGeom (this=this@entry=0x55a9a8374b90) at kernel/qboxlayout.cpp:289 #10 0x00007fd99f91b046 in QBoxLayoutPrivate::setupGeom (this=<optimized out>) at kernel/qboxlayout.cpp:615 #11 QBoxLayout::sizeHint (this=<optimized out>) at kernel/qboxlayout.cpp:616 #12 0x00007fd99f921be7 in QLayout::totalSizeHint (this=0x55a9ab8b5410) at kernel/qlayout.cpp:719 #13 0x00007fd99fa92002 in QScrollArea::sizeHint (this=<optimized out>) at widgets/qscrollarea.cpp:394 #14 0x00007fd99f927a57 in QStackedLayout::sizeHint (this=<optimized out>) at kernel/qstackedlayout.cpp:444 #15 0x00007fd99f921be7 in QLayout::totalSizeHint (this=0x7fd988007d80) at kernel/qlayout.cpp:719 #16 0x00007fd99f925b34 in QWidgetItemV2::updateCacheIfNecessary (this=0x55a9a557ab30) at kernel/qlayoutitem.cpp:724 #17 0x00007fd99f925dcd in QWidgetItemV2::minimumSize (this=0x55a9a557ab30) at kernel/qlayoutitem.cpp:799 #18 0x00007fd99f91e3a6 in QGridBox::minimumSize (this=0x55a9a5556be0) at kernel/qgridlayout.cpp:74 #19 QGridLayoutPrivate::setupLayoutData (this=this@entry=0x55a9a54db410, hSpacing=hSpacing@entry=4, vSpacing=vSpacing@entry=4) at kernel/qgridlayout.cpp:810 #20 0x00007fd99f91f823 in QGridLayoutPrivate::distribute (this=this@entry=0x55a9a54db410, r=..., hSpacing=4, vSpacing=vSpacing@entry=4) at kernel/qgridlayout.cpp:940 #21 0x00007fd99f920607 in QGridLayout::setGeometry (this=0x55a9a55d63c0, rect=...) at kernel/qgridlayout.cpp:1385 #22 0x00007fd99f921a58 in QLayoutPrivate::doResize (this=this@entry=0x55a9a54db410, r=...) at kernel/qlayout.cpp:592 #23 0x00007fd99f922ae9 in QLayout::activate (this=<optimized out>) at kernel/qlayout.cpp:1117 #24 0x00007fd99f9445df in QWidgetPrivate::setVisible (this=0x55a9a5c92de0, visible=<optimized out>) at kernel/qwidget.cpp:8356 #25 0x00007fd99f928037 in QStackedLayout::setCurrentIndex (this=0x7fd988007d80, index=1) at kernel/qstackedlayout.cpp:321 #26 0x00007fd99f928344 in QStackedLayout::setCurrentWidget (this=0x7fd988007d80, widget=widget@entry=0x55a9ab8e7d00) at kernel/qstackedlayout.cpp:376 #27 0x00007fd99faa8361 in QStackedWidget::setCurrentWidget (this=<optimized out>, widget=0x55a9ab8e7d00) at widgets/qstackedwidget.cpp:248 #28 0x00007fd9a0f4ca60 in KPageViewPrivate::_k_pageSelected (this=0x55a9a5577180, index=..., previous=...) at /usr/src/debug/kwidgetsaddons-5.58.0-lp151.184.1.x86_64/src/kpageview.cpp:247 #29 0x00007fd99e879445 in QMetaObject::activate (sender=sender@entry=0x55a9a55a6fe0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe292259c0) at kernel/qobject.cpp:3795 #30 0x00007fd99e879b17 in QMetaObject::activate (sender=sender@entry=0x55a9a55a6fe0, m=m@entry=0x7fd99ecf6680 <QItemSelectionModel::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe292259c0) at kernel/qobject.cpp:3648 #31 0x00007fd99e7ff4b7 in QItemSelectionModel::selectionChanged (this=this@entry=0x55a9a55a6fe0, _t1=..., _t2=...) at .moc/moc_qitemselectionmodel.cpp:458 #32 0x00007fd99e804020 in QItemSelectionModel::emitSelectionChanged (this=this@entry=0x55a9a55a6fe0, newSelection=..., oldSelection=...) at itemmodels/qitemselectionmodel.cpp:1871 #33 0x00007fd99e80756b in QItemSelectionModel::select (this=0x55a9a55a6fe0, selection=..., command=...) at itemmodels/qitemselectionmodel.cpp:1338 #34 0x00007fd99e80151c in QItemSelectionModel::select (this=this@entry=0x55a9a55a6fe0, index=..., command=command@entry=...) at itemmodels/qitemselectionmodel.cpp:1188 #35 0x00007fd99e7ff864 in QItemSelectionModel::setCurrentIndex (this=this@entry=0x55a9a55a6fe0, index=..., command=command@entry=...) at itemmodels/qitemselectionmodel.cpp:1413 #36 0x00007fd9a0f4baea in KPageViewPrivate::updateSelection (this=<optimized out>) at /usr/src/debug/kwidgetsaddons-5.58.0-lp151.184.1.x86_64/src/kpageview.cpp:111 #37 0x00007fd9a0f4c895 in KPageViewPrivate::_k_modelChanged (this=0x55a9a5577180) at /usr/src/debug/kwidgetsaddons-5.58.0-lp151.184.1.x86_64/src/kpageview.cpp:218 #38 0x00007fd99e879445 in QMetaObject::activate (sender=sender@entry=0x55a9a557ab90, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffe29225e20) at kernel/qobject.cpp:3795 #39 0x00007fd99e879b17 in QMetaObject::activate (sender=sender@entry=0x55a9a557ab90, m=m@entry=0x7fd99ecf6580 <QAbstractItemModel::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffe29225e20) at kernel/qobject.cpp:3648 #40 0x00007fd99e7f1066 in QAbstractItemModel::layoutChanged (this=this@entry=0x55a9a557ab90, _t1=..., _t2=<optimized out>, _t2@entry=QAbstractItemModel::NoLayoutChangeHint) at .moc/moc_qabstractitemmodel.cpp:570 #41 0x00007fd9a0f52cb6 in KPageWidgetModel::addPage (this=0x55a9a557ab90, item=item@entry=0x55a9ab8adab0) at /usr/src/debug/kwidgetsaddons-5.58.0-lp151.184.1.x86_64/src/kpagewidgetmodel.cpp:440 #42 0x00007fd9a0f516ad in KPageWidget::addPage (this=<optimized out>, item=item@entry=0x55a9ab8adab0) at /usr/src/debug/kwidgetsaddons-5.58.0-lp151.184.1.x86_64/src/kpagewidget.cpp:94 #43 0x00007fd9a2657cc6 in ModuleView::addModule (this=this@entry=0x55a9a5531360, module=0x55a9a55df8c8) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/core/ModuleView.cpp:198 #44 0x00007fd9a265804d in ModuleView::loadModule (this=this@entry=0x55a9a5531360, menuItem=...) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/core/ModuleView.cpp:151 #45 0x00007fd9797dc634 in SidebarMode::setActiveSubCategory (this=this@entry=0x55a9a5554a50, cat=4) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/sidebar/SidebarMode.cpp:462 #46 0x00007fd9797e2397 in SidebarMode::qt_static_metacall (_o=_o@entry=0x55a9a5554a50, _c=_c@entry=QMetaObject::WriteProperty, _id=_id@entry=4, _a=_a@entry=0x7ffe29226150) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/build/sidebar/systemsettings_sidebar_mode_autogen/EWIEGA46WW/moc_SidebarMode.cpp:313 #47 0x00007fd9797e2803 in SidebarMode::qt_metacall (this=0x55a9a5554a50, _c=QMetaObject::WriteProperty, _id=4, _a=0x7ffe29226150) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/build/sidebar/systemsettings_sidebar_mode_autogen/EWIEGA46WW/moc_SidebarMode.cpp:361 #48 0x00007fd99c2ea603 in QV4::QObjectWrapper::setProperty (engine=engine@entry=0x55a9a55ee7d0, object=object@entry=0x55a9a5554a50, property=0x55a9a594ee58, value=...) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:536 #49 0x00007fd99c2eb13e in QV4::QObjectWrapper::setQmlProperty (engine=0x55a9a55ee7d0, qmlContext=<optimized out>, object=0x55a9a5554a50, name=<optimized out>, revisionMode=QV4::QObjectWrapper::IgnoreRevision, value=...) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:437 #50 0x00007fd99c2eb2d9 in QV4::QObjectWrapper::virtualPut (m=0x7fd971cbe538, id=..., value=..., receiver=0x7fd971cbe538) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4qobjectwrapper.cpp:723 #51 0x00007fd99c2b0269 in QV4::Object::put (receiver=0x7fd971cbe538, v=..., id=..., this=0x7fd971cbe538) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4object_p.h:324 #52 QV4::Object::virtualResolveLookupSetter (object=0x7fd971cbe538, engine=0x55a9a55ee7d0, lookup=0x55a9a594b030, value=...) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4object.cpp:800 #53 0x00007fd99c302691 in QV4::Moth::VME::interpret (frame=0x7ffe29226500, engine=0x55a9a55ee7d0, code=0x7fd980039509 "\016\002") at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:630 #54 0x00007fd99c307056 in QV4::Moth::VME::exec (frame=frame@entry=0x7ffe29226500, engine=engine@entry=0x55a9a55ee7d0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4vme_moth.cpp:441 #55 0x00007fd99c29609b in QV4::Function::call (this=this@entry=0x55a9a58bead0, thisObject=thisObject@entry=0x7fd971cbe4e8, argv=argv@entry=0x7fd971cbe500, argc=<optimized out>, context=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/jsruntime/qv4function.cpp:68 #56 0x00007fd99c409237 in QQmlJavaScriptExpression::evaluate (this=this@entry=0x55a9ab935b20, callData=callData@entry=0x7fd971cbe4d0, isUndefined=isUndefined@entry=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/qqmljavascriptexpression.cpp:211 #57 0x00007fd99c3ad529 in QQmlBoundSignalExpression::evaluate (this=this@entry=0x55a9ab935b20, a=a@entry=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/qqmlboundsignal.cpp:225 #58 0x00007fd99c3ae8ab in QQmlBoundSignal_callback (e=0x55a9ab935ad0, a=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/qqmlboundsignal.cpp:358 #59 0x00007fd99c3e9852 in QQmlNotifier::emitNotify (endpoint=<optimized out>, a=a@entry=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/qqmlnotifier.cpp:104 #60 0x00007fd99c38f519 in QQmlData::signalEmitted (object=0x55a9ab930590, index=<optimized out>, a=0x0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/qml/qml/qqmlengine.cpp:883 #61 0x00007fd99e878c7f in QMetaObject::activate (sender=0x55a9ab930590, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x0) at kernel/qobject.cpp:3664 #62 0x00007fd99e879b17 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7fd98cfef440 <QQuickAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x0) at kernel/qobject.cpp:3648 #63 0x00007fd98cd8df43 in QQuickAbstractButton::clicked (this=<optimized out>) at .moc/moc_qquickabstractbutton_p.cpp:629 #64 0x00007fd98cd19fa6 in QQuickAbstractButtonPrivate::trigger (this=this@entry=0x55a9ab930650) at qquickabstractbutton.cpp:336 #65 0x00007fd98cd1be48 in QQuickAbstractButtonPrivate::handleRelease (this=0x55a9ab930650, point=...) at qquickabstractbutton.cpp:179 #66 0x00007fd98cd391c5 in QQuickControl::mouseReleaseEvent (this=<optimized out>, event=0x7ffe29228ac0) at qquickcontrol.cpp:2110 #67 0x00007fd99c9d5bd8 in QQuickItem::event (this=0x55a9ab930590, ev=0x7ffe29228ac0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quick/items/qquickitem.cpp:8096 #68 0x00007fd99f90478c in QApplicationPrivate::notify_helper (this=this@entry=0x55a9a504fa70, receiver=receiver@entry=0x55a9ab930590, e=e@entry=0x7ffe29228ac0) at kernel/qapplication.cpp:3737 #69 0x00007fd99f90bcf0 in QApplication::notify (this=0x7ffe29229a20, receiver=0x55a9ab930590, e=0x7ffe29228ac0) at kernel/qapplication.cpp:3484 #70 0x00007fd99e8498e8 in QCoreApplication::notifyInternal2 (receiver=0x55a9ab930590, event=0x7ffe29228ac0) at kernel/qcoreapplication.cpp:1060 #71 0x00007fd99e849abe in QCoreApplication::sendEvent (receiver=receiver@entry=0x55a9ab930590, event=event@entry=0x7ffe29228ac0) at kernel/qcoreapplication.cpp:1450 #72 0x00007fd99c9ef49d in QQuickWindowPrivate::deliverMouseEvent (this=this@entry=0x55a9a55f2260, pointerEvent=0x55a9ab7a4350) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quick/items/qquickwindow.cpp:1786 #73 0x00007fd99c9f068b in QQuickWindowPrivate::deliverPointerEvent (this=this@entry=0x55a9a55f2260, event=0x55a9ab7a4350) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quick/items/qquickwindow.cpp:2349 #74 0x00007fd99c9f131e in QQuickWindowPrivate::handleMouseEvent (this=0x55a9a55f2260, event=0x7ffe29228ac0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quick/items/qquickwindow.cpp:2212 #75 0x00007fd99f0c5895 in QWindow::event (this=this@entry=0x55a9a5554520, ev=ev@entry=0x7ffe29228ac0) at kernel/qwindow.cpp:2341 #76 0x00007fd99c9f25b5 in QQuickWindow::event (this=0x55a9a5554520, e=0x7ffe29228ac0) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quick/items/qquickwindow.cpp:1675 #77 0x00007fd99f90478c in QApplicationPrivate::notify_helper (this=this@entry=0x55a9a504fa70, receiver=receiver@entry=0x55a9a5554520, e=e@entry=0x7ffe29228ac0) at kernel/qapplication.cpp:3737 #78 0x00007fd99f90bcf0 in QApplication::notify (this=0x7ffe29229a20, receiver=0x55a9a5554520, e=0x7ffe29228ac0) at kernel/qapplication.cpp:3484 #79 0x00007fd99e8498e8 in QCoreApplication::notifyInternal2 (receiver=0x55a9a5554520, event=0x7ffe29228ac0) at kernel/qcoreapplication.cpp:1060 #80 0x00007fd99e849abe in QCoreApplication::sendEvent (receiver=<optimized out>, event=event@entry=0x7ffe29228ac0) at kernel/qcoreapplication.cpp:1450 #81 0x00007fd99d09a51c in QQuickWidget::mouseReleaseEvent (this=<optimized out>, e=0x7ffe29229110) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quickwidgets/qquickwidget.cpp:1372 #82 0x00007fd99f944b18 in QWidget::event (this=this@entry=0x55a9a55c0d00, event=event@entry=0x7ffe29229110) at kernel/qwidget.cpp:9322 #83 0x00007fd99d09a6fb in QQuickWidget::event (this=0x55a9a55c0d00, e=0x7ffe29229110) at /usr/src/debug/libqt5-qtdeclarative-5.12.3-lp151.1.1.x86_64/src/quickwidgets/qquickwidget.cpp:1525 #84 0x00007fd99f90478c in QApplicationPrivate::notify_helper (this=this@entry=0x55a9a504fa70, receiver=receiver@entry=0x55a9a55c0d00, e=e@entry=0x7ffe29229110) at kernel/qapplication.cpp:3737 #85 0x00007fd99f90cbc8 in QApplication::notify (this=<optimized out>, receiver=0x55a9a55c0d00, e=0x7ffe29229110) at kernel/qapplication.cpp:3198 #86 0x00007fd99e8498e8 in QCoreApplication::notifyInternal2 (receiver=0x55a9a55c0d00, event=0x7ffe29229110) at kernel/qcoreapplication.cpp:1060 #87 0x00007fd99e849ace in QCoreApplication::sendSpontaneousEvent (receiver=receiver@entry=0x55a9a55c0d00, event=event@entry=0x7ffe29229110) at kernel/qcoreapplication.cpp:1462 #88 0x00007fd99f90b1bf in QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x55a9a55c0d00, event=event@entry=0x7ffe29229110, alienWidget=0x55a9a55c0d00, nativeWidget=0x55a9a5331100, buttonDown=buttonDown@entry=0x7fd9a00078d0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2684 #89 0x00007fd99f95f9f1 in QWidgetWindow::handleMouseEvent (this=this@entry=0x55a9a5485a70, event=event@entry=0x7ffe292295a0) at kernel/qwidgetwindow.cpp:661 #90 0x00007fd99f96268a in QWidgetWindow::event (this=0x55a9a5485a70, event=0x7ffe292295a0) at kernel/qwidgetwindow.cpp:280 #91 0x00007fd99f90478c in QApplicationPrivate::notify_helper (this=this@entry=0x55a9a504fa70, receiver=receiver@entry=0x55a9a5485a70, e=e@entry=0x7ffe292295a0) at kernel/qapplication.cpp:3737 #92 0x00007fd99f90bcf0 in QApplication::notify (this=0x7ffe29229a20, receiver=0x55a9a5485a70, e=0x7ffe292295a0) at kernel/qapplication.cpp:3484 #93 0x00007fd99e8498e8 in QCoreApplication::notifyInternal2 (receiver=0x55a9a5485a70, event=0x7ffe292295a0) at kernel/qcoreapplication.cpp:1060 #94 0x00007fd99e849ace in QCoreApplication::sendSpontaneousEvent (receiver=receiver@entry=0x55a9a5485a70, event=event@entry=0x7ffe292295a0) at kernel/qcoreapplication.cpp:1462 #95 0x00007fd99f0ba43b in QGuiApplicationPrivate::processMouseEvent (e=0x55a9a8b2fe90) at kernel/qguiapplication.cpp:2102 #96 0x00007fd99f0bb5a5 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x55a9a8b2fe90) at kernel/qguiapplication.cpp:1837 #97 0x00007fd99f093d7b in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1151 #98 0x00007fd9910963fa in xcbSourceDispatch (source=<optimized out>) at qxcbeventdispatcher.cpp:105 #99 0x00007fd996f58e87 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #100 0x00007fd996f59230 in ?? () from /usr/lib64/libglib-2.0.so.0 #101 0x00007fd996f592bc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #102 0x00007fd99e8a697f in QEventDispatcherGlib::processEvents (this=0x55a9a50c35c0, flags=...) at kernel/qeventdispatcher_glib.cpp:422 #103 0x00007fd99e847c0a in QEventLoop::exec (this=this@entry=0x7ffe29229940, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225 #104 0x00007fd99e850d40 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1363 #105 0x000055a9a37a4d48 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/systemsettings5-5.15.90-lp151.218.1.x86_64/app/main.cpp:71 [Inferior 1 (process 18470) detached] EXPECTED RESULT KCM loads and presents the settings. SOFTWARE/OS VERSIONS KDE Plasma Version: 5.15.90 KDE Frameworks Version: 5.58.0 Qt Version: 5.12.3
Confirmed. :(
*** Bug 408627 has been marked as a duplicate of this bug. ***
Created attachment 120868 [details] New crash information added by DrKonqi systemsettings5 (5.16.0) using Qt 5.12.2 - What I was doing when the application crashed: i dont' have touchpad and open touchpad setting and get crash - Unusual behavior I noticed: - Custom settings of the application: -- Backtrace (Reduced): #7 0x00007f389e2ef7c2 in QWidgetItemV2::updateCacheIfNecessary() const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007f389e2efafd in QWidgetItemV2::maximumSize() const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 [...] #10 0x00007f389e2e4d48 in QBoxLayout::sizeHint() const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #11 0x00007f389e2eb8d7 in QLayout::totalSizeHint() const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #12 0x00007f389e458baa in QScrollArea::sizeHint() const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
*** Bug 408713 has been marked as a duplicate of this bug. ***
*** Bug 408815 has been marked as a duplicate of this bug. ***
*** Bug 408794 has been marked as a duplicate of this bug. ***
*** Bug 408745 has been marked as a duplicate of this bug. ***
*** Bug 407783 has been marked as a duplicate of this bug. ***
*** Bug 408844 has been marked as a duplicate of this bug. ***
*** Bug 408839 has been marked as a duplicate of this bug. ***
I believe this bug is triggered for X11 on systems which do not actually have a touchpad. I think the problem is: Since https://github.com/KDE/plasma-desktop/commit/ce84d6ab4babc80707f4e4c1deb02cfe3ac5b7bb TouchpadConfigContainer::m_plugin is null, because TouchpadBackend::implementation() does not have m_mode properly set. setMode() is supposed to be called in XlibBackend::findTouchpad(), but this goes through the list of touchpads, which can be none, and calls setMode() on each such touchpad. So setMode() is never actually called and m_mode is (implicitly!) initialized to WaylandLibinput (since it does not get set in TouchpadBackend constructor). Then getMode() does not return any of the expected cases in isPlatformX11() branch, which means m_plugin stays a nullptr and then there is a crash in TouchpadConfigContainer::sizeHint().
Proposed fix: --- a/kcms/touchpad/src/kcm/touchpadconfigcontainer.cpp 2019-06-07 18:08:11.000000000 +0200 +++ b/kcms/touchpad/src/kcm/touchpadconfigcontainer.cpp 2019-06-18 14:20:11.853007246 +0200 @@ -42,7 +42,7 @@ if (backend->getMode() == TouchpadInputBackendMode::XLibinput) { m_plugin = new TouchpadConfigLibinput(this, backend); } - else if (backend->getMode() == TouchpadInputBackendMode::XSynaptics) { + else { m_plugin = new TouchpadConfigXlib(this, backend); } } else if (KWindowSystem::isPlatformWayland()) { diff -urN a/kcms/touchpad/src/touchpadbackend.h b/kcms/touchpad/src/touchpadbackend.h --- a/kcms/touchpad/src/touchpadbackend.h 2019-06-07 18:08:11.000000000 +0200 +++ b/kcms/touchpad/src/touchpadbackend.h 2019-06-18 14:18:57.915432036 +0200 @@ -25,9 +25,10 @@ #include <QVariantHash> enum class TouchpadInputBackendMode { - WaylandLibinput = 0, - XLibinput = 1, - XSynaptics = 2 + Unset = 0, + WaylandLibinput = 1, + XLibinput = 2, + XSynaptics = 3 }; class Q_DECL_EXPORT TouchpadBackend : public QObject @@ -35,7 +36,7 @@ Q_OBJECT protected: - explicit TouchpadBackend(QObject *parent) : QObject(parent) {} + explicit TouchpadBackend(QObject *parent) : QObject(parent), m_mode(TouchpadInputBackendMode::Unset) {} void setMode(TouchpadInputBackendMode mode); public: which will create the Synaptics backend as m_plugin in case of no touchpad (as in Plasma 5.15), which will show a message 'No touchpad found' and disable all controls.
So is this only an issue in X? I haven't been on my test machine (Surface Pro 2 w/ keyboard and touchpad cover) for a few days, but if all works in Wayland, I'll just make the switch over to a Wayland Session. That way I also get the added onscreen keyboard! :D Thanks to all that are looking into and working on this! Please let me know if you need any additional info/data.
Thanks so much for the investigation and the proposed patch, Bastian! Would you mind submitting it using Phabricator? It's dead simple to just copy-and-paste your diff into https://phabricator.kde.org/differential/diff/create/. Please mark @ngraham, @romangg, @atulbi, and #plasma as reviewers. Full documentation is available at https://community.kde.org/Infrastructure/Phabricator
Nate, sure. https://phabricator.kde.org/D21884
Thanks very much! I'll see if we can get some eyeballs on that in the next few days.
Hi guys, I guess I'm subscribed to the wrong bug report. This is teh behaviour I'm seeing since 5.16: On 5.15.5 (libunput installed, no xf86-input-synaptics installed): 1. Everything works fine, no crashes whatsoever 2. When I connect a bluetooth mouse, the touchpad disables as expected 3. When I disconnect the bluetooth mouse again, the touchpad is re-enabled On 5.16 (libinput installed, no xf86-input-synatics installed): 1. kdeinit5 crashes after logging in 2. When I connect a bluetooth mouse, the touchpad disables as expected 3. When I disconnect the bluetooth mouse again, the touchpad is _not_ re-enabled A workaround for the behaviour above: 1. Manually enable the touchpad again 2. Log out and log in again 3. Install xf86-input-synaptics, this will also prevent kdeinit5 from crashing My system: Lenovo X1 Carbon 6th gen Operating System: Arch Linux KDE Plasma Version: 5.16.0 KDE Frameworks Version: 5.59.0 Qt Version: 5.12.4 Kernel Version: 5.1.11-arch1-1-ARCH OS Type: 64-bit Processors: 8 × Intel® Core™ i7-8550U CPU @ 1.80GHz Memory: 15,4 GiB of RAM Should a file another bug?
Git commit b7127724309a136a1a8647341df9f5ad02b22698 by Nate Graham, on behalf of Bastian Beischer. Committed on 19/06/2019 at 16:39. Pushed by ngraham into branch 'Plasma/5.16'. [Touchpad KCM] Do not crash in case there is no touchpad Summary: FIXED-IN: 5.16.2 Reviewers: ngraham, romangg, atulbi, #plasma, davidedmundson Reviewed By: ngraham, romangg, #plasma, davidedmundson Subscribers: davidedmundson, plasma-devel Tags: #plasma Differential Revision: https://phabricator.kde.org/D21884 M +4 -1 kcms/touchpad/src/kcm/touchpadconfigcontainer.cpp M +5 -4 kcms/touchpad/src/touchpadbackend.h https://commits.kde.org/plasma-desktop/b7127724309a136a1a8647341df9f5ad02b22698
Thanks so much, Bastian! Eric, that's a separate issue. Please file a new bug for it.