This may be related to 345955. I have been experiencing random crashes in plasmashell - lockups would be a more accurate description - when returning from a locked and/or blanked screen. This requires a 'killall plasmashel && plasmashell &' in a terminal to restore operation. This particular crash is the first one caught by the crash reporting assistant, and all that happened in this case was a monitor was unplugged to fix a wiring issue on the desk. When the monitor was plugged back in, the crash reporting assistant was sitting here waiting for me. Reproducible: Sometimes Steps to Reproduce: I've only seen these issues on multiple-display systems. With compositing set to Glx 2, Glx 3, Xrander, or turned off completely, returning from a period when the screen was in standby or locked, plasmashell is unresponsive when the session is resumed. This is the first time it has outright crashed, and the difference was that a monitor was disconnected from the system. Actual Results: plasmashell crashes or locks up. Expected Results: No noticeable results should happen. The crash reporting assistant assemnbled a report that was bigger than the allotted size to submit due to the included backtrace. I will attach that in the next comment, since I see no way to attach it on this form.
Created attachment 92013 [details] kcrash report The backtrace of the crash and the Crash Reporting Assistant's output.
Thread 1 (Thread 0x7f617635e900 (LWP 23507)): [KCrash Handler] #5 0x00007f61844cf8d7 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 #6 0x00007f61844d153a in __GI_abort () at abort.c:89 #7 0x00007f6184dd7fdd in __gnu_cxx::__verbose_terminate_handler() () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95 #8 0x00007f6184dd5e56 in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:47 #9 0x00007f6184dd5ea1 in std::terminate() () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:57 #10 0x00007f6184dd69ef in __cxxabiv1::__cxa_pure_virtual() () at ../../../../libstdc++-v3/libsupc++/pure.cc:50 #11 0x00007f618563294a in QPlatformScreen::physicalSize() const () at /lib64/libQt5Gui.so.5 #12 0x00007f618566bca2 in QScreen::physicalSize() const () at /lib64/libQt5Gui.so.5 #13 0x00007f618566bd59 in QScreen::physicalDotsPerInch() const () at /lib64/libQt5Gui.so.5 #14 0x00007f618af77e73 in QQuickScreenAttached::screenChanged(QScreen*) () at /lib64/libQt5Quick.so.5 #15 0x00007f6185344b29 in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5 #16 0x00007f618564956f in QWindow::screenChanged(QScreen*) () at /lib64/libQt5Gui.so.5 #17 0x00007f6185649dc5 in QWindowPrivate::emitScreenChangedRecursion(QScreen*) () at /lib64/libQt5Gui.so.5 #18 0x00007f618564d473 in QWindowPrivate::setTopLevelScreen(QScreen*, bool) () at /lib64/libQt5Gui.so.5 #19 0x00007f618564d605 in QWindow::screenDestroyed(QObject*) () at /lib64/libQt5Gui.so.5 #20 0x00007f61853444ba in QMetaObject::activate(QObject*, int, int, void**) () at /lib64/libQt5Core.so.5 #21 0x00007f618534525f in QObject::destroyed(QObject*) () at /lib64/libQt5Core.so.5 #22 0x00007f618534db1b in QObject::~QObject() () at /lib64/libQt5Core.so.5 #23 0x00007f61859c9147 in QScreen::~QScreen() () at /lib64/libQt5Gui.so.5 #24 0x00007f6185632e77 in QPlatformScreen::~QPlatformScreen() () at /lib64/libQt5Gui.so.5 #25 0x00007f616fd65f19 in QXcbScreen::~QXcbScreen() () at /usr/lib64/qt5/plugins/platforms/libqxcb.so #26 0x00007f616fd58d2e in QXcbConnection::updateScreens() () at /usr/lib64/qt5/plugins/platforms/libqxcb.so #27 0x00007f616fd59add in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () at /usr/lib64/qt5/plugins/platforms/libqxcb.so #28 0x00007f616fd5ad7b in QXcbConnection::processXcbEvents() () at /usr/lib64/qt5/plugins/platforms/libqxcb.so #29 0x00007f618534586a in QObject::event(QEvent*) () at /lib64/libQt5Core.so.5 #30 0x00007f6185c0095c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5 #31 0x00007f6185c05da0 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5 #32 0x00007f61853146eb in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /lib64/libQt5Core.so.5 #33 0x00007f618531672b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQt5Core.so.5 #34 0x00007f618536c3d3 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5Core.so.5 #35 0x00007f618019e7fb in g_main_context_dispatch (context=0x7f61680016f0) at gmain.c:3111 #36 0x00007f618019e7fb in g_main_context_dispatch (context=context@entry=0x7f61680016f0) at gmain.c:3710 #37 0x00007f618019eb98 in g_main_context_iterate (context=context@entry=0x7f61680016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3781 #38 0x00007f618019ec4c in g_main_context_iteration (context=0x7f61680016f0, may_block=1) at gmain.c:3842 #39 0x00007f618536c7c7 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #40 0x00007f6185311f82 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5 #41 0x00007f6185319a2c in QCoreApplication::exec() () at /lib64/libQt5Core.so.5 #42 0x000000000042e86b in main(int, char**) (argc=2, argv=<optimized out>) at ../../shell/main.cpp:158
*** This bug has been marked as a duplicate of bug 343216 ***