Bug 415017 - Plasma 5.17.4 crash when I closing application launcher on eglstream wayland
Summary: Plasma 5.17.4 crash when I closing application launcher on eglstream wayland
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: general (show other bugs)
Version: 5.17.4
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: 1.0
Assignee: David Edmundson
URL:
Keywords: drkonqi
: 416083 (view as bug list)
Depends on:
Blocks:
 
Reported: 2019-12-10 14:56 UTC by sky
Modified: 2020-04-24 09:32 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sky 2019-12-10 14:56:20 UTC
Application: plasmashell (5.17.4)

Qt Version: 5.12.5
Frameworks Version: 5.64.0
Operating System: Linux 5.3.15-300.fc31.x86_64 x86_64
Distribution: "Fedora release 31 (Thirty One)"

-- Information about the crash:
nvidia proprietary driver version : 440.36
egl-wayland : 1.1.4
libwayland-egl : 1.17.0
nvidia card : rtx 2070
export KWIN_DRM_USE_EGL_STREAMS=1

if I use application launcher, plasma will crash after application launcher closed.

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f50d6a87c80 (LWP 10142))]

Thread 11 (Thread 0x7f508a383700 (LWP 11000)):
#0  0x00007f50d9d06d45 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f50da841ff3 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#2  0x00007f50da842081 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#3  0x00007f50dc47d1b9 in QSGRenderThread::processEventsAndWaitForMore() () at /lib64/libQt5Quick.so.5
#4  0x00007f50dc47d45d in QSGRenderThread::run() () at /lib64/libQt5Quick.so.5
#5  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#6  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#7  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 10 (Thread 0x7f508ab84700 (LWP 10976)):
#0  0x00007f50d8ff8883 in g_source_ref () at /lib64/libglib-2.0.so.0
#1  0x00007f50d8ff8931 in g_source_iter_next () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa0ff in g_main_context_check () at /lib64/libglib-2.0.so.0
#3  0x00007f50d8ffa742 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#4  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#5  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#6  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#7  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#8  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#9  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7f5099940700 (LWP 10972)):
#0  0x00007f50d9d06d45 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f50da841ff3 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#2  0x00007f50da842081 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#3  0x00007f50dc47d1b9 in QSGRenderThread::processEventsAndWaitForMore() () at /lib64/libQt5Quick.so.5
#4  0x00007f50dc47d45d in QSGRenderThread::run() () at /lib64/libQt5Quick.so.5
#5  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#6  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#7  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f509aff9700 (LWP 10951)):
#0  0x00007f50da4b0a6f in poll () at /lib64/libc.so.6
#1  0x00007f50d8ffa79e in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f509bfff700 (LWP 10930)):
#0  0x00007f50d9046a08 in g_mutex_unlock () at /lib64/libglib-2.0.so.0
#1  0x00007f50d8ff9d0d in g_main_context_prepare () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa6cb in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#3  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#4  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#6  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#7  0x00007f50a8dfdc4c in KCupsConnection::run() () at /lib64/libkcupslib.so
#8  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#9  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f50ab4c1700 (LWP 10914)):
#0  0x00007f50da4b0a6f in poll () at /lib64/libc.so.6
#1  0x00007f50d8ffa79e in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#7  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#8  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f50b3fff700 (LWP 10794)):
#0  0x00007f50d9d06d45 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f50da841ff3 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /lib64/libQt5Core.so.5
#2  0x00007f50da842081 in QWaitCondition::wait(QMutex*, unsigned long) () at /lib64/libQt5Core.so.5
#3  0x00007f50dc47d1b9 in QSGRenderThread::processEventsAndWaitForMore() () at /lib64/libQt5Quick.so.5
#4  0x00007f50dc47d45d in QSGRenderThread::run() () at /lib64/libQt5Quick.so.5
#5  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#6  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#7  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f50b9636700 (LWP 10789)):
#0  0x00007f50da4b0a6f in poll () at /lib64/libc.so.6
#1  0x00007f50d8ffa79e in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007f50dc3f0e8a in QQuickPixmapReader::run() () at /lib64/libQt5Quick.so.5
#7  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f50c3fff700 (LWP 10746)):
#0  0x00007f50da4b0a6f in poll () at /lib64/libc.so.6
#1  0x00007f50d8ffa79e in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007f50dc107119 in QQmlThreadPrivate::run() () at /lib64/libQt5Qml.so.5
#7  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f50c9455700 (LWP 10166)):
#0  0x00007f50da4b0a6f in poll () at /lib64/libc.so.6
#1  0x00007f50d8ffa79e in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#2  0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007f50daa38cd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#4  0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#5  0x00007f50da83b395 in QThread::exec() () at /lib64/libQt5Core.so.5
#6  0x00007f50db24cf4a in QDBusConnectionManager::run() () at /lib64/libQt5DBus.so.5
#7  0x00007f50da83c4e6 in QThreadPrivate::start(void*) () at /lib64/libQt5Core.so.5
#8  0x00007f50d9d004e2 in start_thread () at /lib64/libpthread.so.0
#9  0x00007f50da4bb693 in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f50d6a87c80 (LWP 10142)):
[KCrash Handler]
#6  0x00007f50c2e8cc56 in destroy_callback () at /lib64/libnvidia-egl-wayland.so.1
#7  0x00007f50c8003207 in wl_egl_window_destroy () at /lib64/libwayland-egl.so.1
#8  0x00007f50c2eb4f3c in QtWaylandClient::QWaylandEglWindow::invalidateSurface() () at /usr/lib64/qt5/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#9  0x00007f50dadbf154 in QWindowPrivate::setVisible(bool) () at /lib64/libQt5Gui.so.5
#10 0x00007f50dcc9355e in PlasmaQuick::Dialog::setVisible(bool) () at /lib64/libKF5PlasmaQuick.so.5
#11 0x00007f50dcc95c60 in PlasmaQuick::Dialog::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /lib64/libKF5PlasmaQuick.so.5
#12 0x00007f50dc0dab5f in GenericBinding<1>::write(QV4::Value const&, bool, QFlags<QQmlPropertyData::WriteFlag>) () at /lib64/libQt5Qml.so.5
#13 0x00007f50dc0db540 in QQmlNonbindingBinding::doUpdate(QQmlJavaScriptExpression::DeleteWatcher const&, QFlags<QQmlPropertyData::WriteFlag>, QV4::Scope&) () at /lib64/libQt5Qml.so.5
#14 0x00007f50dc0d7c94 in QQmlBinding::update(QFlags<QQmlPropertyData::WriteFlag>) () at /lib64/libQt5Qml.so.5
#15 0x00007f50dc0b3d9d in QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) () at /lib64/libQt5Qml.so.5
#16 0x00007f50dc04fde5 in QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) () at /lib64/libQt5Qml.so.5
#17 0x00007f50daa0d803 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#18 0x00007f50dcc891b6 in PlasmaQuick::AppletQuickItem::expandedChanged(bool) () at /lib64/libKF5PlasmaQuick.so.5
#19 0x00007f50dcc8e0a1 in PlasmaQuick::AppletQuickItem::setExpanded(bool) () at /lib64/libKF5PlasmaQuick.so.5
#20 0x00007f50dcc8ef9b in PlasmaQuick::AppletQuickItem::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () at /lib64/libKF5PlasmaQuick.so.5
#21 0x00007f50dcc90c9b in PlasmaQuick::AppletQuickItem::qt_metacall(QMetaObject::Call, int, void**) () at /lib64/libKF5PlasmaQuick.so.5
#22 0x00007f50c821f7da in AppletInterface::qt_metacall(QMetaObject::Call, int, void**) () at /usr/lib64/qt5/plugins/plasma/scriptengines/plasma_appletscript_declarative.so
#23 0x00007f50dc0603a4 in QQmlPropertyPrivate::write(QObject*, QQmlPropertyData const&, QVariant const&, QQmlContextData*, QFlags<QQmlPropertyData::WriteFlag>) () at /lib64/libQt5Qml.so.5
#24 0x00007f50dbf9c30c in QV4::QObjectWrapper::setProperty(QV4::ExecutionEngine*, QObject*, QQmlPropertyData*, QV4::Value const&) () at /lib64/libQt5Qml.so.5
#25 0x00007f50dbf9cd8e in QV4::QObjectWrapper::setQmlProperty(QV4::ExecutionEngine*, QQmlContextData*, QObject*, QV4::String*, QV4::QObjectWrapper::RevisionMode, QV4::Value const&) () at /lib64/libQt5Qml.so.5
#26 0x00007f50dbf9cee1 in QV4::QObjectWrapper::virtualPut(QV4::Managed*, QV4::PropertyKey, QV4::Value const&, QV4::Value*) () at /lib64/libQt5Qml.so.5
#27 0x00007f50dbf196cd in QV4::Lookup::setterFallback(QV4::Lookup*, QV4::ExecutionEngine*, QV4::Value&, QV4::Value const&) () at /lib64/libQt5Qml.so.5
#28 0x00007f50dbfb57dd in QV4::Moth::VME::interpret(QV4::CppStackFrame*, QV4::ExecutionEngine*, char const*) () at /lib64/libQt5Qml.so.5
#29 0x00007f50dbfba557 in QV4::Moth::VME::exec(QV4::CppStackFrame*, QV4::ExecutionEngine*) () at /lib64/libQt5Qml.so.5
#30 0x00007f50dbf478ff in QV4::Function::call(QV4::Value const*, QV4::Value const*, int, QV4::ExecutionContext const*) () at /lib64/libQt5Qml.so.5
#31 0x00007f50dc0d0c07 in QQmlJavaScriptExpression::evaluate(QV4::CallData*, bool*) () at /lib64/libQt5Qml.so.5
#32 0x00007f50dc06fa5c in QQmlBoundSignalExpression::evaluate(void**) () at /lib64/libQt5Qml.so.5
#33 0x00007f50dc070c28 in QQmlBoundSignal_callback(QQmlNotifierEndpoint*, void**) () at /lib64/libQt5Qml.so.5
#34 0x00007f50dc0b3d9d in QQmlNotifier::emitNotify(QQmlNotifierEndpoint*, void**) () at /lib64/libQt5Qml.so.5
#35 0x00007f50dc04fde5 in QQmlData::signalEmitted(QAbstractDeclarativeData*, QObject*, int, void**) () at /lib64/libQt5Qml.so.5
#36 0x00007f50daa0d803 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5
#37 0x00007f50dc55d636 in QQuickMouseArea::clicked(QQuickMouseEvent*) () at /lib64/libQt5Quick.so.5
#38 0x00007f50dc55efd7 in QQuickMouseArea::setPressed(Qt::MouseButton, bool, Qt::MouseEventSource) () at /lib64/libQt5Quick.so.5
#39 0x00007f50dc560073 in QQuickMouseArea::mouseReleaseEvent(QMouseEvent*) () at /lib64/libQt5Quick.so.5
#40 0x00007f50dc4c1b58 in QQuickItem::event(QEvent*) () at /lib64/libQt5Quick.so.5
#41 0x00007f50db4d8ad6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#42 0x00007f50db4e2150 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#43 0x00007f50da9e3de8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#44 0x00007f50dc4dca1d in QQuickWindowPrivate::deliverMouseEvent(QQuickPointerMouseEvent*) () at /lib64/libQt5Quick.so.5
#45 0x00007f50dc4dde91 in QQuickWindowPrivate::deliverPointerEvent(QQuickPointerEvent*) () at /lib64/libQt5Quick.so.5
#46 0x00007f50dc4deb59 in QQuickWindowPrivate::handleMouseEvent(QMouseEvent*) () at /lib64/libQt5Quick.so.5
#47 0x00007f50dadbf57d in QWindow::event(QEvent*) () at /lib64/libQt5Gui.so.5
#48 0x00007f50dc4e0089 in QQuickWindow::event(QEvent*) () at /lib64/libQt5Quick.so.5
#49 0x000055fb6c87394f in PanelView::event(QEvent*) ()
#50 0x00007f50db4d8ad6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#51 0x00007f50db4e2150 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#52 0x00007f50da9e3de8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#53 0x00007f50dadb5723 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib64/libQt5Gui.so.5
#54 0x00007f50dadb6f4b in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib64/libQt5Gui.so.5
#55 0x00007f50dad9354b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Gui.so.5
#56 0x00007f50c99ed564 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5WaylandClient.so.5
#57 0x00007f50d8ffa4a0 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#58 0x00007f50d8ffa830 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0
#59 0x00007f50d8ffa8d3 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#60 0x00007f50daa38cb5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#61 0x00007f50da9e2ceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#62 0x00007f50da9eaa16 in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#63 0x000055fb6c85a73a in main ()
[Inferior 1 (process 10142) detached]

Possible duplicates by query: bug 413185.

Reported using DrKonqi
Comment 1 Christoph Feck 2020-02-05 14:49:11 UTC
*** Bug 416083 has been marked as a duplicate of this bug. ***
Comment 2 Adam Borsos 2020-02-11 23:13:42 UTC
I have the same backtrace.

QT version: 5.13.2
Frameworks Version: 5.64.0

-- Information about the crash:
nvidia proprietary driver version : 440.36
egl-wayland : 1.1.4
libwayland-egl : 1.17.0
nvidia card : gtx 1060 6GB
export KWIN_DRM_USE_EGL_STREAMS=1


Until this is fixed, setting the env variable QT_QUICK_BACKEND=software works as a workaround for me - of course with a small, but noticeable performance penalty.
Comment 3 David Edmundson 2020-04-24 09:32:18 UTC
Fixed by me in Qt 5.15.0: 4bd13402f0293e85b8dfdf92254e250ac28094c7