Bug 1733444 - plasmashell segmentation fault when Plasma on X autologin froze on the splash screen in Fedora Rawhide KDE Plasma live image
Summary: plasmashell segmentation fault when Plasma on X autologin froze on the splash...
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: plasma-workspace
Version: 31
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: KDE SIG
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-07-26 06:06 UTC by Matt Fagnani
Modified: 2020-11-24 16:53 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-11-24 16:53:28 UTC
Type: Bug


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
KDE Software Compilation 410211 0 None None None 2019-07-26 06:06:57 UTC

Description Matt Fagnani 2019-07-26 06:06:57 UTC
Description of problem:

I booted into the Fedora Rawhide/31 KDE Plasma spin image Fedora-KDE-Live-x86_64-Rawhide-20190724.n.0.iso at
https://koji.fedoraproject.org/koji/buildinfo?buildID=1319740

I ran sudo dnf install x*amd* kwin*way* pla*way* which installed
kwayland-integration-5.16.2-1.fc31.x86_64     
kwin-wayland-5.16.2-1.fc31.x86_64             
plasma-workspace-wayland-5.16.2-2.fc31.x86_64 
xorg-x11-drv-amdgpu-19.0.1-1.fc31.x86_64      
xorg-x11-server-Xwayland-1.20.5-5.fc31.x86_64 

I logged out of Plasma. I was going to log in to Plasma on Wayland from sddm as I usually do, but the Fedora live image is set to autologin to Plasma on X. I restarted sddm so that the X amdgpu driver would be used instead of the X modesetting driver since the system has a Radeon R5 GPU. I switched to VT2 and I ran sudo systemctl restart sddm. Plasma on X logged in automatically but Plasma froze on the splash screen. I ran sudo systemctl stop sddm in VT2. I ran startplasmacompositor & from VT2. Plasma on Wayland started, but drkonqi showed a segmentation fault in plasmashell in ScreenPool::ScreenPool at /usr/src/debug/plasma-workspace-5.16.2-2.fc31.x86_64/shell/screenpool.cpp:48. 

I think that the plasmashell crash was more likely to have happened when the autologin to Plasma on X got stuck on the splash screen and I stopped sddm than when I ran startplasmacompositor. The trace of the segmentation fault doesn't appear to have any Wayland-specific functions. The Wayland session appeared normally. I just didn't see drkonqi until the Wayland session started. plasmashell and drkonqi aborted after I stopped sddm and before I ran startplasmacompositor the next time I tried to reproduce the crash. The Plasma on X autologin splash screen freeze has happened several times after restarting sddm with two Fedora rawhide live images. The circle stopped spinning after a few seconds, and the desktop didn't appear.


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

Thread 2 (Thread 0x7f4a359f6700 (LWP 3721)):
#0  0x00007f4a466fd79f in poll () from /lib64/libc.so.6
#1  0x00007f4a453102ee in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#2  0x00007f4a45310423 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007f4a46c90bd3 in QEventDispatcherGlib::processEvents (this=0x7f4a300018e0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f4a46c3a9db in QEventLoop::exec (this=this@entry=0x7f4a359f5cf0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007f4a46a93625 in QThread::exec (this=this@entry=0x7f4a4752a060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007f4a474a6f4a in QDBusConnectionManager::run (this=0x7f4a4752a060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178
#7  0x00007f4a46a94776 in QThreadPrivate::start (arg=0x7f4a4752a060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:361
#8  0x00007f4a45ef04e2 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f4a46708333 in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f4a48b7dd00 (LWP 3462)):
[KCrash Handler]
#5  ScreenPool::ScreenPool (this=0x55f81a24adb0, config=..., parent=<optimized out>) at /usr/src/debug/plasma-workspace-5.16.2-2.fc31.x86_64/shell/screenpool.cpp:48
#6  0x000055f8198ba860 in ShellCorona::ShellCorona (this=0x55f81a21ff50, parent=<optimized out>) at /usr/include/qt5/QtCore/qarraydata.h:257
#7  0x000055f8198c7b9f in ShellManager::loadHandlers (this=0x7f4a3000b050) at /usr/src/debug/plasma-workspace-5.16.2-2.fc31.x86_64/shell/shellmanager.cpp:93
#8  0x000055f81988f5a5 in ShellManager::qt_static_metacall (_o=<optimized out>, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>) at /usr/src/debug/plasma-workspace-5.16.2-2.fc31.x86_64/x86_64-redhat-linux-gnu/shell/plasmashell_autogen/EWIEGA46WW/moc_shellmanager.cpp:104
#9  0x00007f4a46c66bda in QObject::event (this=0x7f4a3000b050, e=<optimized out>) at kernel/qobject.cpp:1260
#10 0x00007f4a47736af6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#11 0x00007f4a4773fe80 in QApplication::notify(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#12 0x00007f4a46c3bad8 in QCoreApplication::notifyInternal2 (receiver=0x7f4a3000b050, event=0x55f81a1dd8f0) at kernel/qcoreapplication.cpp:1084
#13 0x00007f4a46c3ea7b in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55f81a100b90) at kernel/qcoreapplication.cpp:1821
#14 0x00007f4a46c90e27 in postEventSourceDispatch (s=0x55f81a1d2fc0) at kernel/qeventdispatcher_glib.cpp:276
#15 0x00007f4a4530ffed in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#16 0x00007f4a45310380 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#17 0x00007f4a45310423 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#18 0x00007f4a46c90bb5 in QEventDispatcherGlib::processEvents (this=0x55f81a1b1360, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#19 0x00007f4a46c3a9db in QEventLoop::exec (this=this@entry=0x7ffe296ad0d0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#20 0x00007f4a46c42706 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#21 0x000055f81988e7e4 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-5.16.2-2.fc31.x86_64/shell/main.cpp:215
[Inferior 1 (process 3462) detached]


Version-Release number of selected component (if applicable):
plasma-workspace-0:5.16.2-2.fc31.x86_64
kf5-kwayland-0:5.59.0-2.fc31.x86_64
qt5-qtbase-0:5.12.4-5.fc31.x86_64
sddm-0:0.18.1-2.fc31.x86_64

How reproducible:
The Plasma on X autologin splash screen freeze has happened several times after restarting sddm with two Fedora rawhide live images and an F30 installation. I saw the plasmashell segmentation fault once, and a plasmashell abort another time.

Steps to Reproduce:
1. boot into the Fedora Rawhide/31 KDE Plasma spin image Fedora-KDE-Live-x86_64-Rawhide-20190724.n.0.iso
2. sudo dnf install x*amd* kwin*way* pla*way*
3. log out of Plasma
4. switch to VT2 with ctrl-alt-f2 after Plasma splash screen freeze
5. sudo systemctl restart sddm
6. sudo systemctl stop sddm
7. startplasmacompositor &
8. coredumpctl

Actual results:
The Plasma on X autologin stopped on the splash screen many times after logging out. plasmashell had a segmentation fault and abort during two of them.

Expected results:
Plasma would log in normally with no plasmashell crashes.

Additional info:

I reported this issue at https://bugs.kde.org/show_bug.cgi?id=410211

Comment 1 Ben Cotton 2019-08-13 18:54:39 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to 31.

Comment 2 Ben Cotton 2020-11-03 15:21:19 UTC
This message is a reminder that Fedora 31 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 31 on 2020-11-24.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '31'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 31 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 3 Ben Cotton 2020-11-24 16:53:28 UTC
Fedora 31 changed to end-of-life (EOL) status on 2020-11-24. Fedora 31 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.