Bug 356175 - [wayland] plasmashell crashes at startup
Summary: [wayland] plasmashell crashes at startup
Status: RESOLVED UNMAINTAINED
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-wayland (show other bugs)
Version: master
Platform: unspecified Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
: 355843 360157 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-12-01 23:01 UTC by darkbasic
Modified: 2016-10-22 07:34 UTC (History)
10 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Session log (12.49 KB, text/plain)
2016-03-30 00:30 UTC, John Rowley
Details
kstart5 plasmashell backtrace (1.75 KB, text/plain)
2016-10-21 16:19 UTC, Lóránt Farkas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description darkbasic 2015-12-01 23:01:47 UTC
Application: plasmashell (5.5.90)
 (Compiled from sources)
Qt Version: 5.5.1
Operating System: Linux 4.4.0-rc2-core-avx-i+ x86_64
Distribution: "NAME=Gentoo"

-- Information about the crash:
I'm using plasma git master on Gentoo (with systemd), with latest Intel Ivy Bridge drivers (kernel 4.4-rc3, xorg-server git master, xf86-video-intel git master, mesa-11.1-rc2/11.0.6). If I try to start a plasma wayland session (from sddm in this case) plasmashell crashes at startup and there are no window decorations nor desktop. I recompiled some key packages like qt and plasmashell with debug symbols to provide a useful backtrace. QT version is 5.5.1. Weston runs flawlessly and KWIN's EGL backend runs flawlessly on X too. Let me know if you need something else.

The crash can be reproduced every time.

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

Thread 6 (Thread 0x7f81f7831700 (LWP 2447)):
#0  0x00007f82052773ad in poll () from /lib64/libc.so.6
#1  0x00007f820131bb6c in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f8205ad96f5 in QEventDispatcherGlib::processEvents (this=0x7f81f00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7f81f7830dc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#5  0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7f81f7830dc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f82058deb9c in QThread::exec (this=<optimized out>) at thread/qthread.cpp:503
#7  0x00007f82058dec59 in QThread::run (this=<optimized out>) at thread/qthread.cpp:570
#8  0x00007f82058e3ccb in QThreadPrivate::start (arg=0x738f50) at thread/qthread_unix.cpp:331
#9  0x00007f8204a83324 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f82052801cd in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f81f4e1b700 (LWP 2459)):
#0  0x00007f820131b040 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f820131ba98 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f8205ad96f5 in QEventDispatcherGlib::processEvents (this=0x7f81e80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7f81f4e1adb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#5  0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7f81f4e1adb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f82058deb9c in QThread::exec (this=this@entry=0x7f3b10) at thread/qthread.cpp:503
#7  0x00007f8208121f58 in QQmlThreadPrivate::run (this=0x7f3b10) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f82058e3ccb in QThreadPrivate::start (arg=0x7f3b10) at thread/qthread_unix.cpp:331
#9  0x00007f8204a83324 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f82052801cd in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f81e7fff700 (LWP 2460)):
#0  0x00007f820131b063 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f820131ba98 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f8205ad96f5 in QEventDispatcherGlib::processEvents (this=0x7f81e00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7f81e7ffedb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#5  0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7f81e7ffedb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f82058deb9c in QThread::exec (this=this@entry=0xa1dda0) at thread/qthread.cpp:503
#7  0x00007f8208121f58 in QQmlThreadPrivate::run (this=0xa1dda0) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f82058e3ccb in QThreadPrivate::start (arg=0xa1dda0) at thread/qthread_unix.cpp:331
#9  0x00007f8204a83324 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f82052801cd in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f81e6862700 (LWP 2461)):
#0  0x00007f82052773ad in poll () from /lib64/libc.so.6
#1  0x00007f820131bb6c in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f8205ad96f5 in QEventDispatcherGlib::processEvents (this=0x7f81d80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#4  0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7f81e6861db0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#5  0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7f81e6861db0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f82058deb9c in QThread::exec (this=this@entry=0xa19430) at thread/qthread.cpp:503
#7  0x00007f8208121f58 in QQmlThreadPrivate::run (this=0xa19430) at qml/ftw/qqmlthread.cpp:141
#8  0x00007f82058e3ccb in QThreadPrivate::start (arg=0xa19430) at thread/qthread_unix.cpp:331
#9  0x00007f8204a83324 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f82052801cd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f81de094700 (LWP 2462)):
#0  0x00007f8201360249 in g_mutex_lock () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f820131b6c6 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f820131bbd0 in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f8205ad96f5 in QEventDispatcherGlib::processEvents (this=0x7f81540008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:420
#5  0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7f81de093d60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#6  0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7f81de093d60, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#7  0x00007f82058deb9c in QThread::exec (this=this@entry=0x10519b0) at thread/qthread.cpp:503
#8  0x00007f8208acf22d in QQuickPixmapReader::run (this=0x10519b0) at util/qquickpixmapcache.cpp:760
#9  0x00007f82058e3ccb in QThreadPrivate::start (arg=0x10519b0) at thread/qthread_unix.cpp:331
#10 0x00007f8204a83324 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f82052801cd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f820abcc800 (LWP 2444)):
[KCrash Handler]
#6  0x00007f82051cb3c7 in raise () from /lib64/libc.so.6
#7  0x00007f82051cc75a in abort () from /lib64/libc.so.6
#8  0x00007f82058d2707 in qt_message_fatal (message=<synthetic pointer>, context=...) at global/qlogging.cpp:1578
#9  QMessageLogger::fatal (this=this@entry=0x7ffe9ddca760, msg=msg@entry=0x7f8208cc43c6 "%s") at global/qlogging.cpp:781
#10 0x00007f8208b3fb04 in QSGRenderLoop::handleContextCreationFailure (this=this@entry=0x929dd0, window=0xbbcaf0, isEs=isEs@entry=false) at scenegraph/qsgrenderloop.cpp:244
#11 0x00007f8208b40206 in QSGGuiThreadRenderLoop::renderWindow (this=this@entry=0x929dd0, window=0xbbcaf0) at scenegraph/qsgrenderloop.cpp:333
#12 0x00007f8208b41506 in QSGGuiThreadRenderLoop::exposureChanged (this=0x929dd0, window=0xbbcaf0) at scenegraph/qsgrenderloop.cpp:422
#13 0x00007f8208b6a7ea in QQuickWindow::exposeEvent (this=<optimized out>) at items/qquickwindow.cpp:207
#14 0x00007f8205dcbe32 in QWindow::event (this=this@entry=0xbbcaf0, ev=ev@entry=0x7ffe9ddcac10) at kernel/qwindow.cpp:2028
#15 0x00007f8208b7a1fb in QQuickWindow::event (this=this@entry=0xbbcaf0, e=e@entry=0x7ffe9ddcac10) at items/qquickwindow.cpp:1413
#16 0x000000000043e006 in DesktopView::event (this=0xbbcaf0, e=0x7ffe9ddcac10) at /usr/src/debug/kde-plasma/plasma-workspace-9999/plasma-workspace-9999/shell/desktopview.cpp:205
#17 0x00007f82065136ce in QApplicationPrivate::notify_helper (this=this@entry=0x7360a0, receiver=receiver@entry=0xbbcaf0, e=e@entry=0x7ffe9ddcac10) at kernel/qapplication.cpp:3716
#18 0x00007f8206518995 in QApplication::notify (this=0x7ffe9ddcb040, receiver=0xbbcaf0, e=0x7ffe9ddcac10) at kernel/qapplication.cpp:3160
#19 0x00007f8205a847c1 in QCoreApplication::notifyInternal (this=0x7ffe9ddcb040, receiver=receiver@entry=0xbbcaf0, event=event@entry=0x7ffe9ddcac10) at kernel/qcoreapplication.cpp:965
#20 0x00007f8205dc5155 in sendSpontaneousEvent (event=0x7ffe9ddcac10, receiver=0xbbcaf0) at ../../src/corelib/kernel/qcoreapplication.h:227
#21 QGuiApplicationPrivate::processExposeEvent (e=0x105d180) at kernel/qguiapplication.cpp:2648
#22 0x00007f8205dc5d4e in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x105d180) at kernel/qguiapplication.cpp:1643
#23 0x00007f8205dae06a in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:625
#24 0x00007f81f7f23e68 in userEventSourceDispatch (source=<optimized out>) at eventdispatchers/qeventdispatcher_glib.cpp:70
#25 0x00007f820131b8ed in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#26 0x00007f820131bbd0 in ?? () from /usr/lib64/libglib-2.0.so.0
#27 0x00007f820131bc7c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#28 0x00007f8205ad9764 in QEventDispatcherGlib::processEvents (this=0x75d4d0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#29 0x00007f81f7f23fc8 in QPAEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at eventdispatchers/qeventdispatcher_glib.cpp:115
#30 0x00007f8205a837a6 in QEventLoop::processEvents (this=this@entry=0x7ffe9ddcaee0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:128
#31 0x00007f8205a83bb3 in QEventLoop::exec (this=this@entry=0x7ffe9ddcaee0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#32 0x00007f8205a8ba20 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#33 0x00007f8205dbb49e in QGuiApplication::exec () at kernel/qguiapplication.cpp:1527
#34 0x00007f820650f2e3 in QApplication::exec () at kernel/qapplication.cpp:2976
#35 0x0000000000435d3c in main (argc=4, argv=<optimized out>) at /usr/src/debug/kde-plasma/plasma-workspace-9999/plasma-workspace-9999/shell/main.cpp:179

Possible duplicates by query: bug 356017, bug 354966, bug 353914, bug 352840, bug 352098.

Reported using DrKonqi
Comment 1 Marco Martin 2015-12-03 12:24:48 UTC
maybe it's trying to render on a surface not created yet?
Comment 2 Martin Flöser 2015-12-03 12:38:00 UTC
Do you have the abort message Qt prints?
Comment 3 darkbasic 2015-12-03 18:59:09 UTC
This is the only log I have: https://paste.lugons.org/show/9740/
I don't know where to find the QT abort message you are talking about.

I forgot to say that if went so far it's because I disable OOM protection in kinit: https://aur.archlinux.org/cgit/aur.git/tree/001-disable-oom-protection.patch?h=kinit-nooom
Otherwise all I get is just get a black window with a cursor.
Comment 4 darkbasic 2015-12-10 08:34:52 UTC
With latest git snapshot I get the "black screen with cursor" despite the kinit patch.
Comment 5 Brandon Gandy 2015-12-10 11:43:04 UTC
(In reply to darkbasic from comment #4)
> With latest git snapshot I get the "black screen with cursor" despite the
> kinit patch.

Same issue here. It's not the login manager since I've tried starting it with the command line. It has the nice breeze-themed cursor if that helps.
Comment 6 Patrick Auernig 2015-12-10 13:37:05 UTC
*** Bug 355843 has been marked as a duplicate of this bug. ***
Comment 7 darkbasic 2015-12-10 14:09:52 UTC
It might be a "packaging" bug because I noticed the plasma ebuilds dropped the qt5-wayland dependency.
I don't know if it's really necessary but the ebuilds no longer depend on it and someone on the arch forums stated it is mandatory: https://bbs.archlinux.org/viewtopic.php?pid=1584835#p1584835
Comment 8 Marco Martin 2016-03-17 15:06:33 UTC
*** Bug 360157 has been marked as a duplicate of this bug. ***
Comment 9 John Rowley 2016-03-30 00:29:52 UTC
I'm getting the same issue here, too. 

Running startplasmacompositor via .xinitrc results in a black screen with a Breeze-themed pointer. Pressing Alt-Space results in a delay and then krunner dropping down shakily from the top of the screen with distorted colours, so there seems to be something running...

Running KF5 apps using '-platform wayland' from inside weston works perfectly. Plasma sessions via X11 work as expected. Weston/sway also run perfectly.

I'm running Slackware current with a kdesrcbuild-built git master Plasma install (incl. kwayland and kwayland-integration), Qt 5.6.0, wayland/mesa/nouveau/drm git.

I will attach my wayland session log.
Comment 10 John Rowley 2016-03-30 00:30:38 UTC
Created attachment 98149 [details]
Session log
Comment 11 Martin Flöser 2016-03-30 06:06:52 UTC
(In reply to John Rowley from comment #9) 
> Running startplasmacompositor via .xinitrc

Erm I hope you see the problem with trying to start wayland through *X*initrc.

> I'm running Slackware current

I'm sorry, but Slackware doesn't provide logind, which is a runtime requirement to start a Wayland session (Patches for other solutions welcome).
Comment 12 Lóránt Farkas 2016-07-25 21:59:47 UTC
I am running an ArchLinux box (I have logind) but plasmashell crashes.

If I run the command:
$kstart plasmashell

Then I get:
>kstart(...) main: Omitting both --window and --windowclass arguments is not recommended
>KCrash: Attempting to start /usr/bin/plasmashell from kdeinit
>sock_file=/run/user/1010/kdeinit5__0
>KCrash: Attempting to  start /usr/lib/drkonqi from kdeinit
>sock_file=/run/user/1010/kdeinit5__0

drkonqi does not start.

For the command:
$/usr/bin/plasmashell 

I get:

>No metadata file in the package, expected it at: "/home/USERNAME/Desktop//metadata.desktop"
3x times, then
>file:///usr/share/plasma/shells/org.kde.plasma.desktop/contents/views/Panel.qml:80: TypeError: Cannot read property 'formFactor' of null
And a bunch of line like that. Again KCrash ans sockfile and at the end:
QsocketNotifier: Invalid socket 9 and type 'Read', disabling...

(Sorry, the clipboard cannot paste its value to the browser.)
Comment 13 Martin Flöser 2016-10-05 07:26:43 UTC
As this issue is really old in terms of Wayland support I dare to set to unmaintained and assume that it is fixed by now. We have fixes all over the place - in Qt, KWin, KWayland, Plasma. It's quite likely that a ten month old crash is fixed now.
Comment 14 darkbasic 2016-10-05 09:06:59 UTC
Also I'm not able to test it anymore on the same machine, so I agree to close it.
Comment 15 Lóránt Farkas 2016-10-06 10:41:06 UTC
I did half an hour ago, after a full system refresh.

I still have have crash. The spalsh screen shows up, then the ktorrent windows shows up, and that's all. Now at least I have a coredump. But it is 19mb. I cannot attach here. 

here is a link for the coredump:
https://drive.google.com/open?id=0B5EdsRKfDCNqWloxVjFfLTNhS2c

I would like to use wayland under KDE but in this state is useless. No panel, No menu for right button, nothing, just black screen.

I would like to help (though I am not a developer) with anything that i can. But I do not know how to help.
Comment 16 Martin Flöser 2016-10-06 12:45:21 UTC
@Lorant: is this the same backtrace as the one in this bug report?
Comment 17 eduardo 2016-10-15 02:28:46 UTC
Same issue, on manjaro, plasma 5.8, intel haswell. startplasmacompositor doesn't work either (black screen shows up)
Comment 18 Lóránt Farkas 2016-10-20 08:47:24 UTC
The coredump in comment 15 is a clean start and crash through sddm. 

As the ktorrent starts I can open a dolphin (it starts clean) and I can run commands though the konsole. 

If a run the command
$kstart plasmashell
kstart(7080) main: Omitting both --window and --windowclass arguments is not recommended 

then I can see my background image (that is an achievement) for several second.
Then:

KCrash: Attempting to start /usr/bin/plasmashell from kdeinit
sock_file=/run/user/1000/kdeinit5__1
KCrash: Application 'plasmashell' crashing...
KCrash: Attempting to start /usr/lib/drkonqi from kdeinit
sock_file=/run/user/1000/kdeinit5__1

I have coredump also for this:
https://drive.google.com/file/d/0B5EdsRKfDCNqTWhCeXdIb2J5aHM/view?usp=sharing
Comment 19 Christoph Feck 2016-10-20 20:42:55 UTC
Please use "kstart5" instead of "kstart" when running KF5 applications.
Comment 20 Lóránt Farkas 2016-10-21 16:18:16 UTC
With 
$kstart5 plasmashell
I got backtrace, attached here.
Comment 21 Lóránt Farkas 2016-10-21 16:19:09 UTC
Created attachment 101692 [details]
kstart5 plasmashell backtrace
Comment 22 Martin Flöser 2016-10-22 07:34:35 UTC
(In reply to Lóránt Farkas from comment #21)
> Created attachment 101692 [details]
> kstart5 plasmashell backtrace

That's a crash of kstart5 - please report a new bug for that one.