Plasmashell crashes on KDE + i3 as WM

Hello everyone! Since update to KDE 6.5.0 (and later on up to 6.5.0-1) I face plasmashell crashes with every reboot.
Unfortunately I cannot even collect debug info as debug collector says that it also has crashed, lol :slight_smile:
when i try to check plasmashell in CLI I get this

```
plasmashell -v
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.
qt.qpa.plugin: Could not load the Qt platform plugin “xcb” in “” even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: offscreen, vnc, xcb, minimal, wayland-brcm, wayland-egl, wayland, minimalegl, linuxfb, eglfs, vkkhrdisplay.

[1] 6690 IOT instruction (core dumped) plasmashell -v

```

Does anybody know the way to fix it?

Did you install xcb-cursor0 or libxcb-cursor0 as suggested by the error message ?

I am facing a similar issue where plasmashell crashes every time when I replace kwin with i3.

However, my output when running plasmashell -v is not the same as OP:

```

plasmashell 6.5.0
QThreadStorage: entry 8 destroyed before end of thread 0x55d8fa5c2010
QThreadStorage: entry 2 destroyed before end of thread 0x55d8fa5c2010
QThreadStorage: entry 1 destroyed before end of thread 0x55d8fa5c2010
```

@meven Let me know if you need any more specific console outputs in order to help debug this issue :sweat_smile:

For any crashes, the best traces:

coredumpctl debug plasmashell -A "-ex bt -ex quit" |& tee backtrace.txt

Then share the backtrace file.

Hello everyone,

I’m running Arch Linux with i3 on top of KDE and have been using this setup for several months. Two days ago, I updated my system, and after rebooting, plasmashell started crashing in a loop. I suspected I had broken something in my installation, so today I did a clean reinstall.

The installation went well. I first booted into pure KDE — everything worked perfectly. Then I installed i3 and booted into it — still no issues. However, after setting up i3 to run over KDE (like before the clean reinstall), the same bug appeared again.

Now, I no longer get multiple crash report windows, but the KDE panel (the bar at the bottom with the app launcher, system tray icons, etc.) is missing. I tried restarting plasmashell from Konsole with:

```bash
plasmashell --replace
```

And here’s the output:

```text
kf.plasma.quick: Applet preload policy set to 1
KCrash: Attempting to start /usr/bin/plasmashell
KCrash: Application ‘plasmashell’ crashing… crashRecursionCounter = 2
Segmentation fault (core dumped) plasmashell --replace
kf.plasma.quick: Applet preload policy set to 1
```

I have generated the full log of plasmashell --replace with:

```bash
QT_LOGGING_RULES=“*.debug=true” plasmashell --replace 2> plasmashell_replace.log
```

And @meven i uplaod my log and backtrace on github gist: gist[dot]github[dot]com/SepiaRovilhar/2d916d3e53f91597b00eb50d9d2e38c7

(I didn’t find how to upload a file here)

I hope it can help you

https://gist.github.com/SepiaRovilhar/2d916d3e53f91597b00eb50d9d2e38c7 returns 404

This is restricted for new users of discuss, to avoid bots/malicious actors from posting bad links.

I upload the backtrace on hastebin: hastebin[dot]com/share/inawawawej.bash

If you want the log of replace, i can give you a SwissTransfer link (file is too large for hastebin/ pastebin)

Extract:

Program terminated with signal SIGSEGV, Segmentation fault.
#0  QObject::parent (this=<optimized out>, this=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs.h:241
241	    { return const_cast<QObject *>(cast(const_cast<const QObject *>(obj))); }
[Current thread is 1 (Thread 0x7f92c65b0080 (LWP 11703))]
#0  QObject::parent (this=<optimized out>, this=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs.h:241
#1  Plasma::Containment::screen (this=<optimized out>)
    at /usr/src/debug/libplasma/libplasma-6.5.1/src/plasma/containment.cpp:471
#2  0x000055a7fd082f4b in PanelView::canSetStrut (this=0x7f92b8007b30)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/panelview.cpp:1503
#3  PanelView::canSetStrut (this=0x7f92b8007b30)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/panelview.cpp:1479
#4  PanelView::updateExclusiveZone (this=this@entry=0x7f92b8007b30)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/panelview.cpp:1591
#5  0x000055a7fd0836bc in PanelView::updateFloating (this=0x7f92b8007b30)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/panelview.cpp:1961
#6  0x000055a7fd0a5644 in PanelView::PanelView (parent=0x0, this=0x7f92b8007b30, corona=0x7ffe9c6e26b0, 
    targetScreen=<optimized out>)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/panelview.cpp:131
#7  ShellCorona::createWaitingPanels (this=0x7ffe9c6e26b0)
    at /usr/src/debug/plasma-workspace/plasma-workspace-6.5.1/shell/shellcorona.cpp:1613
#8  0x00007f92ccfd716f in QtPrivate::QSlotObjectBase::call (this=<optimized out>, r=<optimized out>, 
    a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#9  doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4255
#10 0x00007f92ccfe439c in QMetaObject::activate<void, QTimer::QPrivateSignal> (sender=<optimized out>, 
    mo=<optimized out>, local_signal_index=0, ret=0x0)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs.h:319
#11 QTimer::timeout (this=<optimized out>, _t1=...)
    at /usr/src/debug/qt6-base/build/src/corelib/Core_autogen/include/moc_qtimer.cpp:182
#12 QTimer::timerEvent (e=<optimized out>, this=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:322
#13 QTimer::timerEvent (this=<optimized out>, e=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:316
#14 0x00007f92ccfc44f6 in QObject::event (this=<optimized out>, e=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1386
#15 0x00007f92cf3020a0 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7ffe9c6e27c0, 
    e=0x7ffe9c6e2010) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3307
#16 0x00007f92ccf6a6c8 in QCoreApplication::notifyInternal2 (receiver=0x7ffe9c6e27c0, event=0x7ffe9c6e2010)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1109
#17 0x00007f92cd12c6af in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7ffe9c6e2010)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1549
#18 QTimerInfoList::activateTimers (this=0x55a8116a8180)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:426
#19 0x00007f92cd24dad1 in timerSourceDispatch (source=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:152

A Containment without a parent :confused:

Worth reporting a bug for plasma-workspace.

It’s done, i have report the bug (he got id 511428)

Thanks for your help.

1 Like

Adding the plain link:

1 Like