Bug 446515 - When splash screen is manually disabled, KSplash keeps loading for 50 seconds in background
Summary: When splash screen is manually disabled, KSplash keeps loading for 50 seconds...
Status: CONFIRMED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Splash Screens (other bugs)
Version First Reported In: 6.1.4
Platform: Arch Linux All
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-12-05 12:49 UTC by Podagric
Modified: 2025-08-14 19:43 UTC (History)
7 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Podagric 2021-12-05 12:49:27 UTC
STEPS TO REPRODUCE
1. Activate systemd boot
1. Deactivate the animation in the KCM (https://i.imgur.com/0yStiG4.png)
2. Reboot


OBSERVED RESULT
The time until the plasma is loaded and the desktop is displayed appears to be unaffected, but the logs show that the process is in the background for a long time after the boot.


```
$  systemd-analyze --user blame                        
50.315s plasma-ksplash-ready.service
6.231s mpd.service
825ms plasma-kcminit.service
576ms xdg-desktop-portal.service
296ms plasma-powerdevil.service
290ms plasma-kwin_x11.service
```

```
 $  systemctl --user status plasma-ksplash-ready.service
○ plasma-ksplash-ready.service - KSplash "ready" Stage
     Loaded: loaded (/usr/lib/systemd/user/plasma-ksplash-ready.service; static)
     Active: inactive (dead) since Sun 2021-12-05 09:37:02 -03; 7min ago
    Process: 678 ExecStart=/usr/bin/qdbus org.kde.KSplash /KSplash org.kde.KSplash.setStage ready (code=exited, status=1/FAILURE)
   Main PID: 678 (code=exited, status=1/FAILURE)
        CPU: 9ms

dez 05 09:36:12 archlinux systemd[542]: Starting KSplash "ready" Stage...
dez 05 09:37:02 archlinux qdbus[678]: Cannot find 'org.kde.KSplash.setStage' in object /KSplash at org.kde.KSplash
dez 05 09:37:02 archlinux systemd[542]: Finished KSplash "ready" Stage.
```

SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 5.23.4
KDE Frameworks Version: 5.88.0
Qt Version: 5.15.2
Graphics Platform: X11
Comment 1 Nate Graham 2023-05-23 19:48:18 UTC
Can confirm still in Plasma 6.
Comment 2 Amine Hassane 2023-12-03 00:03:06 UTC
There's actually a visible delay now in Plasma 6. After starting plasma the desktop appears for a split second, then the splash screen for 30-40 seconds, and then finally the desktop shows. If I disable the splash screen I get the same behavior as OP.
Comment 3 Podagric 2023-12-15 21:42:27 UTC
It seems to me that the person responsible for this part of the system is David Edmundson? could we notify him through here?
Comment 4 Sebin Nyshkim 2024-03-25 12:07:17 UTC
Can confirm the issue is still present in Plasma 6.0.2.

Setting the splash to "None" or masking the offending user unit does not eliminate the 50s delay introduced by the `qdbus` call from `plasma-ksplash-ready.service` to get to the desktop. It just sits there on a black screen until it times out with the same error as with the initial reporter. After that the desktop functions like normal. The delay is on every login (i.e. after a reboot as well as logout and log back in) though and very annoying.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux (Kernel 6.8.1.arch1-1)
KDE Plasma Version: 6.0.2
KDE Frameworks Version: 6.0.0
Qt Version: 6.6.2
Graphics Platform: Wayland
Comment 5 Jan Činčera 2024-09-01 14:06:51 UTC
Can confirm this problem in Plasma 6.1.4, can't reproduce it on 6.1.3 though.

On login it takes a long time, which can cause other things to start late (the panel, autostart apps), but I can't reliably reproduce this behavior.
```
$ systemd-analyze --user blame
30.025s plasma-ksplash-ready.service
  660ms plasma-powerdevil.service
  539ms xdg-desktop-portal.service
  184ms plasma-kwin_x11.service
  160ms plasma-kactivitymanagerd.service
  153ms plasma-plasmashell.service
  151ms xdg-desktop-portal-gtk.service
  148ms plasma-ksmserver.service
  122ms plasma-kded6.service
  119ms plasma-xdg-desktop-portal-kde.service
  106ms plasma-polkit-agent.service
  105ms plasma-kcminit.service
```

On logout it sometimes gets stuck on a black screen with a cursor, kwin is still running and keyboard shortcuts normally work.
```
14:13:29 systemd[737]: Started dbus-:1.4-org.kde.LogoutPrompt@1.service.
14:13:30 systemd[737]: Started dbus-:1.4-org.kde.Shutdown@1.service.
14:13:30 systemd[737]: dbus-:1.4-org.kde.LogoutPrompt@1.service: Main process exited, code=exited, status=1/FAILURE
14:13:30 systemd[737]: dbus-:1.4-org.kde.LogoutPrompt@1.service: Failed with result 'exit-code'.
14:13:30 systemd[737]: plasma-plasmashell.service: Consumed 1.219s CPU time, 159.6M memory peak.
14:13:30 systemd[737]: Stopped target plasma-workspace-x11.target.
14:13:30 systemd[737]: Stopped target KDE Plasma Workspace.
14:13:30 systemd[737]: Requested transaction contradicts existing jobs: Transaction for graphical-session.target/stop is destructive (plasma-ksplash-ready.service has 'start' job queued, but 'stop' is included in transaction).
14:13:30 systemd[737]: graphical-session.target: Failed to enqueue stop job, ignoring: Transaction for graphical-session.target/stop is destructive (plasma-ksplash-ready.service has 'start' job queued, but 'stop' is included in transaction).
14:14:11 qdbus[2150]: Cannot find 'org.kde.KSplash.setStage' in object /KSplash at org.kde.KSplash
14:14:11 systemd[737]: Finished KSplash "ready" Stage.
14:14:11 systemd[737]: Stopped target KDE Plasma Workspace Core.
14:14:11 systemd[737]: Stopped target Session services which should run early before the graphical session is brought up.
14:14:20 plasma_waitforname[1796]: org.kde.plasma.waitforname: WaitForName: Service was not registered within timeout
14:14:20 systemd[737]: dbus-:1.4-org.kde.KSplash@1.service: Main process exited, code=exited, status=1/FAILURE
14:14:20 systemd[737]: dbus-:1.4-org.kde.KSplash@1.service: Failed with result 'exit-code'.
14:14:34 plasma_waitforname[2574]: org.kde.plasma.waitforname: WaitForName: Service was not registered within timeout
14:14:34 systemd[737]: dbus-:1.4-org.freedesktop.Notifications@0.service: Main process exited, code=exited, status=1/FAILURE
14:14:34 systemd[737]: dbus-:1.4-org.freedesktop.Notifications@0.service: Failed with result 'exit-code'.
14:16:38 kglobalacceld[1798]: kf.globalaccel.kglobalacceld: KKeyServer::xcbKeyPressEventToQt failed
14:17:19 systemd[737]: Starting Splash screen shown during boot...
14:17:19 ksmserver[1834]: org.kde.kf6.ksmserver: Connection rejected: ksmserver is shutting down
14:17:32 systemd[737]: plasma-ksplash.service: Main process exited, code=killed, status=15/TERM
14:17:32 systemd[737]: plasma-ksplash.service: Failed with result 'signal'.
14:17:32 systemd[737]: Stopped Splash screen shown during boot.
```
(it gets stuck somewhere to the end of this log)

A workaround is masking the systemd user units plasma-ksplash.service and plasma-ksplash-ready.service, this gets rid of the delay.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux (kernel Linux 6.10.7-arch1-1)
KDE Plasma Version: 6.1.4
KDE Frameworks Version: 6.5.0
Qt Version: 6.7.2
Graphics Platform: X11