Bug 429426 - kglobalaccel5 repeatedly crashes on boot in QGuiApplicationPrivate::createPlatformIntegration(), which can delay login
Summary: kglobalaccel5 repeatedly crashes on boot in QGuiApplicationPrivate::createPla...
Status: RESOLVED FIXED
Alias: None
Product: frameworks-kglobalaccel
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 5.80.0
Platform: Arch Linux Linux
: NOR major
Target Milestone: ---
Assignee: kdelibs bugs
URL: https://bugzilla.redhat.com/show_bug....
Keywords:
: 429415 434369 435486 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-11-21 01:39 UTC by mintjulep
Modified: 2022-02-15 21:41 UTC (History)
11 users (show)

See Also:
Latest Commit:
Version Fixed In: Plasma 5.22 or Frameworks 5.82


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description mintjulep 2020-11-21 01:39:49 UTC
SUMMARY


STEPS TO REPRODUCE
1. start computer on Arch linux  and login with KDe plasma 5
2. logout
3. try to log back in

OBSERVED RESULT
stuck on spash screen for a while. After 1 min or so, the cursor appears and can be moved, but I'm still stuck on  splash screen. After 5 min, KDE finally start

EXPECTED RESULT

Instant KDE start 


SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: Arch linux (linux kernel 5.9) Kde plasma 5
(available in About System)
KDE Plasma Version: 5.20
KDE Frameworks Version: 
Qt Version: 5

ADDITIONAL INFORMATION

I don't have the issue with gnome, so it's KDE related. 
interesting :when I do pkill -u *myusername* I'm logged out (duh) but log back in is normal. So maybe it's a process that makes it crash ?
Comment 1 mintjulep 2020-11-23 18:41:01 UTC
JourLancel show errors related to kglobalaccel.
Comment 2 outloudvi 2020-12-20 12:37:17 UTC
Hi, 


systemctl --user mask plasma-kglobalaccel.service
Comment 3 outloudvi 2020-12-20 12:37:57 UTC
Hi,
Comment 4 outloudvi 2020-12-20 12:47:34 UTC
Hi, please allow me to amend on this bug report.

The problem is that an immediate login after logout will cause stuck in Plasma. From the logs, we see that it's the failure to start kglobalaccel that causes the problem. After the timeout, Plasma starts and kglobalaccel also starts successfully.

Related systemd logs:

dbus-daemon[1298]: [session uid=1000 pid=1298] Activating via systemd: service name='org.kde.kglobalaccel' unit='plasma-kglobalaccel.service' requested by ':1.597' (uid=1000 pid=44701 comm="/usr/bin/ksmserver ")
systemd[1067]: plasma-kglobalaccel.service: Start request repeated too quickly.
systemd[1067]: plasma-kglobalaccel.service: Failed with result 'core-dump'.
ksmserver[44701]: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.")
kded5[44696]: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.")
kaccess[44719]: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.")
org_kde_powerdevil[44816]: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.")
dbus-daemon[1298]: [session uid=1000 pid=1298] Failed to activate service 'org.kde.kglobalaccel': timed out (service_start_timeout=120000ms)
kactivitymanagerd[44827]: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.TimedOut", "Failed to activate service 'org.kde.kglobalaccel': timed out (service_start_timeout=120000ms)")
dbus-daemon[1298]: [session uid=1000 pid=1298] Activating via systemd: service name='org.kde.kglobalaccel' unit='plasma-kglobalaccel.service' requested by ':1.610' (uid=1000 pid=44816 comm="/usr/lib/org_kde_powerdevil ")
dbus-daemon[1298]: [session uid=1000 pid=1298] Successfully activated service 'org.kde.kglobalaccel'
kglobalaccel5[44876]: The X11 connection broke (error 1). Did the X11 server die?
systemd[1067]: plasma-kglobalaccel.service: Main process exited, code=exited, status=1/FAILURE
systemd[1067]: plasma-kglobalaccel.service: Failed with result 'exit-code'.

We have seen similar reports in multi distros:

- https://bugzilla.redhat.com/show_bug.cgi?id=1787230
- https://forums.gentoo.org/viewtopic-t-1046222-start-0.html
- https://forum.manjaro.org/t/cant-login-after-logout/40887
Comment 5 outloudvi 2020-12-20 12:54:27 UTC
Sorry for the repeated comment submission.

(In reply to outloudvi from comment #2)

> systemctl --user mask plasma-kglobalaccel.service

It seems that masking the kglobalaccel service will solve the stuck problem. After the plasmashell started, I ran kglobalaccel5 manually and global key shortcuts work as usual.

I think that there are two reasons for the problem, but not sure which:

1. kglobalaccel5 should not be started before plasmashell, but dbus asks it to do so, which results in the problem.
2. kglobalaccel5 is meant to be started before plasmashell, but it does not work now because of some problems.
Comment 6 David Edmundson 2020-12-21 00:04:22 UTC
commit 25e84f3f6ac54097d9c021705dc18b187352fa02
Author: David Edmundson <kde@davidedmundson.co.uk>
Date:   Wed Dec 2 14:57:27 2020 +0000

    Avoid autostarting kglobalaccel when shutting down

in kglobalaccel should hide the problem triggering this.

That'll be in the next frameworks 5.77.
Comment 7 mintjulep 2020-12-21 16:06:12 UTC
How would I do that ?
Comment 8 Nate Graham 2020-12-22 21:52:52 UTC
You would upgrade to Frameworks 5.77 when your distro  makes it available.
Comment 9 mintjulep 2020-12-22 22:02:12 UTC
Hum... after checking, I'm allready on kglobalaccel 5.77 :/
Comment 10 Felipe Peter 2021-01-09 15:09:31 UTC
I'm on Manjaro with frameworks 5.77.0 and get the same problem with kglobalaccel.
Comment 11 Nate Graham 2021-01-12 01:04:16 UTC
David, does this require changes in Plasma 5.21 too?
Comment 12 flan_suse 2021-04-03 16:14:56 UTC
I am suffering from the same issue as described by the bug report.

If I logout and then try to log back in, the SDDM screen will freeze for about three minutes before finally logging in to a new Plasma session.

Disabling Compositing made no difference.

Using TripleBuffering made no difference.

Removing ~/.cache/ seems to help sometimes, but other times it makes no difference. Not very consistent.

Removing ~/.Xauthority made no difference.

Here is my system info, and let me know what logs/debug I can provide to help diagnose and fix this bug:

Operating System: Manjaro Linux

KDE Plasma Version: 5.21.3

KDE Frameworks Version: 5.80.0

Qt Version: 5.15.2

Kernel Version: 5.10.23-1-MANJARO

OS Type: 64-bit

Graphics Platform: X11

Processors: 6 × Intel® Core™ i5-8400 CPU @ 2.80GHz

Memory: 11.6 GiB of RAM

Graphics Processor: GeForce GTX 1650/PCIe/SSE2

Nvidia Driver Version: 460.56 (proprietary)

I cannot recall how long this has been a problem, but I tried to ignore it in hopes that maybe it's already been addressed and will be fixed with an update to KDE. I would say I've noticed it for months, perhaps.
Comment 13 flan_suse 2021-04-03 16:19:14 UTC
> systemctl --user mask plasma-kglobalaccel.service

If I do this, then it seems to fix the login delay problem, but now I cannot use *any* keyboard shortcuts. :(
Comment 14 outloudvi 2021-04-03 16:32:15 UTC
(In reply to flan_suse from comment #13)
> > systemctl --user mask plasma-kglobalaccel.service
> 
> If I do this, then it seems to fix the login delay problem, but now I cannot
> use *any* keyboard shortcuts. :(

That's expected as kglobalaccel is required for global keyboard shortcuts.


Also, I want to amend that this bug is still there at the follow version:

* Plasma 5.21.3
* KDE Framework 5.80.0
* kglobalaccel 5.80.0 (Arch Linux 5.80.0:2, [1])

Also I noticed that kglobalaccel crashed before that failure of KDE re-login:

Process 4312 (kglobalaccel5) of user 1000 dumped core.
                                                
Stack trace of thread 4312:
#0  0x00007faaea8c4ef5 raise (libc.so.6 + 0x3cef5)
#1  0x00007faaea8ae862 abort (libc.so.6 + 0x26862)
#2  0x00007faaeacc49ac _ZNK14QMessageLogger5fatalEPKcz (libQt5Core.so.5 + 0x909ac)
#3  0x00007faaeb2ba646 _ZN22QGuiApplicationPrivate25createPlatformIntegrationEv (libQt5Gui.so.5 + 0x131646)
#4  0x00007faaeb2baae1 _ZN22QGuiApplicationPrivate21createEventDispatcherEv (libQt5Gui.so.5 + 0x131ae1)
#5  0x00007faaeaef0686 _ZN23QCoreApplicationPrivate4initEv (libQt5Core.so.5 + 0x2bc686)
#6  0x00007faaeb2bdb20 _ZN22QGuiApplicationPrivate4initEv (libQt5Gui.so.5 + 0x134b20)
#7  0x00007faaeb2bea88 _ZN15QGuiApplicationC1ERiPPci (libQt5Gui.so.5 + 0x135a88)
#8  0x000056524a34b08f n/a (kglobalaccel5 + 0x208f)
#9  0x00007faaea8afb25 __libc_start_main (libc.so.6 + 0x27b25)
#10 0x000056524a34b4de n/a (kglobalaccel5 + 0x24de)

1. https://github.com/archlinux/svntogit-packages/blob/c1075e2b63a192d98d8ef19ab6a242edd14e6fce/trunk/PKGBUILD
Comment 15 flan_suse 2021-04-03 16:54:32 UTC
Can we safely change this bug's status to "Confirmed" and remove that it has been "Fixed" for KDE Framework 5.77, since it still exists in 5.80?
Comment 16 Nate Graham 2021-04-05 18:01:22 UTC
Are you using systemd startup, or not? See also http://blog.davidedmundson.co.uk/blog/plasma-and-the-systemd-startup/
Comment 17 mintjulep 2021-04-05 18:23:07 UTC
(In reply to Nate Graham from comment #16)
> Are you using systemd startup, or not? See also
> http://blog.davidedmundson.co.uk/blog/plasma-and-the-systemd-startup/

sweet jesus lord of mercy it worked !!!
what I did :

kwriteconfig5 --file startkderc --group General --key systemdBoot true

then check the status with :

systemctl --user status plasma-plasmashell‧service

and saw that the service was inactive. I enabled it :

systemctl --user enable plasma-plasmashell‧service

reboot and it's perfect ! Not only can I now logout and login without any problem, but also Plasma starts faster than before
Thanks for the hint !!
Comment 18 mintjulep 2021-04-05 18:42:32 UTC
EDIT : No it doesn't, talk to fast.
the bug came back. Not the first time I get this tho : it's hard to know what's up because sometimes, it doesn't bug
Comment 19 Nate Graham 2021-04-05 20:03:35 UTC
Yay! ... almost lol.

Can you see if it's still kglobalaccel that's crashing on boot, or is it something else now? `coredumpctl` should be able to tell you.
Comment 20 mintjulep 2021-04-05 20:09:03 UTC
Here is the result of cordumpctl :

Thu 2020-10-22 19:18:43 CEST    1026 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:18:43 CEST    1027 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 19:18:43 CEST     999 1000 985 SIGABRT missing   /usr/bin/kglobalaccel5                                                           n/a
Thu 2020-10-22 19:18:46 CEST     713 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:26:00 CEST    2659 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:26:00 CEST    2660 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 19:26:00 CEST    2629 1000 985 SIGABRT missing   /usr/bin/kglobalaccel5                                                           n/a
Thu 2020-10-22 19:26:03 CEST    1206 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:30:03 CEST    4149 1000 985 SIGABRT missing   /usr/bin/kglobalaccel5                                                           n/a
Thu 2020-10-22 19:30:03 CEST    4184 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 19:30:03 CEST    4183 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:30:06 CEST    2837 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 19:43:44 CEST     662 1000 985 SIGSEGV missing   /usr/bin/kded5                                                                   n/a
Thu 2020-10-22 20:31:49 CEST   26836 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 20:31:49 CEST   26835 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 20:31:53 CEST     708 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 21:00:36 CEST   17077 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 21:00:36 CEST   17078 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 21:00:39 CEST     715 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 21:12:39 CEST     988 1000 985 SIGSEGV missing   /usr/bin/kdeinit5                                                                n/a
Thu 2020-10-22 21:29:39 CEST   10467 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Thu 2020-10-22 21:29:39 CEST   10466 1000 985 SIGABRT missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 21:29:42 CEST     717 1000 985 SIGSEGV missing   /usr/bin/plasmashell                                                             n/a
Thu 2020-10-22 21:40:50 CEST   12881 1000 985 SIGABRT missing   /usr/lib/drkonqi                                                                 n/a
Comment 21 mintjulep 2021-04-05 20:09:39 UTC
wich is weird cause we're not Tuesday 2020/10/22
Comment 22 mintjulep 2021-04-05 20:11:49 UTC
Ok, made coredumpctl -r and got this :
Mon 2021-04-05 20:36:22 CEST    2753 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.1K
Mon 2021-04-05 20:36:21 CEST    2739 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.4K
Mon 2021-04-05 20:36:21 CEST    2701 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.2K
Mon 2021-04-05 20:36:20 CEST    2681 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        417.0K
Mon 2021-04-05 20:36:20 CEST    2665 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        410.3K
Mon 2021-04-05 20:32:15 CEST    2172 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        402.9K
Mon 2021-04-05 20:32:15 CEST    2158 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.0K
Mon 2021-04-05 20:32:14 CEST    2120 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        402.9K
Mon 2021-04-05 20:32:13 CEST    2099 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.2K
Mon 2021-04-05 20:29:17 CEST    2427 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.6K
Mon 2021-04-05 20:29:17 CEST    2413 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.5K
Mon 2021-04-05 20:29:16 CEST    2375 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        402.9K
Mon 2021-04-05 20:29:15 CEST    2354 1000 985 SIGABRT present   /usr/bin/kglobalaccel5                                                        403.2K


so yeah, seems like the same issue
Comment 23 Nate Graham 2021-04-05 21:36:36 UTC
Darn. Can you attach a backtrace from one of those new crashlogs? `coredumpctl debug kglobalaccel5` and then type `bt`
Comment 24 mintjulep 2021-04-05 22:08:33 UTC
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db‧so.1".
Core was generated by `/usr/bin/kglobalaccel5'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00007f1052a57ef5 in raise () from /usr/lib/libc‧so.6
(gdb) bt
#0  0x00007f1052a57ef5 in raise () from /usr/lib/libc‧so.6
#1  0x00007f1052a41862 in abort () from /usr/lib/libc‧so.6
#2  0x00007f1052e579ac in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/libQt5Core‧so.5
#3  0x00007f105344d646 in QGuiApplicationPrivate::createPlatformIntegration() () from /usr/lib/libQt5Gui‧so.5
#4  0x00007f105344dae1 in QGuiApplicationPrivate::createEventDispatcher() () from /usr/lib/libQt5Gui‧so.5
#5  0x00007f1053083686 in QCoreApplicationPrivate::init() () from /usr/lib/libQt5Core‧so.5
#6  0x00007f1053450b20 in QGuiApplicationPrivate::init() () from /usr/lib/libQt5Gui‧so.5
#7  0x00007f1053451a88 in QGuiApplication::QGuiApplication(int&, char**, int) () from /usr/lib/libQt5Gui‧so.5
#8  0x000055d528b2308f in ?? ()
#9  0x00007f1052a42b25 in __libc_start_main () from /usr/lib/libc‧so.6
#10 0x000055d528b234de in ?? ()
(gdb)
Comment 25 flan_suse 2021-04-06 02:29:34 UTC
coredumpctl -r yields the same output as @mintjulop above, even after applying the kwriteconfig / systemdboot workaround. After multiple reboots (to be certain), the re-login issue remains, even after confirming that "plasma-plasmashell.service" is enabled and active.

I tried to follow the steps to provide a backtrace, but I get this warning:

"Coredump entry has no core attached (neither internally in the journal nor externally on disk)."

My system info once again is:

Operating System: Manjaro Linux

KDE Plasma Version: 5.21.3
KDE Frameworks Version: 5.80.0
Qt Version: 5.15.2
Kernel Version: 5.10.23-1-MANJARO
OS Type: 64-bit
Graphics Platform: X11
Processors: 6 × Intel® Core™ i5-8400 CPU @ 2.80GHz
Memory: 11.6 GiB of RAM
Graphics Processor: GeForce GTX 1650/PCIe/SSE2
Nvidia Driver Version: 460.56 (proprietary)

I think if this resolves for @mintjulep, it will resolve for others, including myself. I don't want to distract nor interrupt anything, but if providing another coredump or backtrace would be useful, let me know. So far, what @mintjulep is pasting looks nearly identical to my own terminal output.
Comment 26 flan_suse 2021-04-06 02:33:52 UTC
If it means anything, this is what I get from "coredumpctl debug kglobalaccel5":


Stack trace of thread 8649:
#0  0x00007fe650683ef5 raise (libc.so.6 + 0x3cef5)
#1  0x00007fe65066d862 abort (libc.so.6 + 0x26862)
#2  0x00007fe650a819ac _ZNK14QMessageLogger5fatalEPKcz (libQt5Core.so.5 + 0x909ac)
#3  0x00007fe651079646 _ZN22QGuiApplicationPrivate25createPlatformIntegrationEv (libQt5Gui.so.5 + 0x131646)
#4  0x00007fe651079ae1 _ZN22QGuiApplicationPrivate21createEventDispatcherEv (libQt5Gui.so.5 + 0x131ae1)
#5  0x00007fe650cad686 _ZN23QCoreApplicationPrivate4initEv (libQt5Core.so.5 + 0x2bc686)
#6  0x00007fe65107cb20 _ZN22QGuiApplicationPrivate4initEv (libQt5Gui.so.5 + 0x134b20)
#7  0x00007fe65107da88 _ZN15QGuiApplicationC1ERiPPci (libQt5Gui.so.5 + 0x135a88)
#8  0x000055b77a53408f n/a (kglobalaccel5 + 0x208f)
#9  0x00007fe65066eb25 __libc_start_main (libc.so.6 + 0x27b25)
#10 0x000055b77a5343fe n/a (kglobalaccel5 + 0x23fe)
Comment 27 Nate Graham 2021-04-07 12:08:09 UTC
Thanks everyone.
Comment 28 David Edmundson 2021-04-07 13:16:22 UTC
>but if providing another coredump or backtrace would be useful, let me know

Not really. We know why kglobalaccel fails if it gets started without X running.

What would be interesting to know is why kglobalaccel is getting started/restarted at this point.
Comment 29 David Edmundson 2021-04-07 22:41:50 UTC
What I believe is happening is kglobalaccel has X11 torn away from under it (which is not too surprising) and fails with an error code, it then gets restarted by systemd because a unit exists. We don't have an X server so crash 5 times in a loop - we then get blacklisted and it fails to start when X11 really is up.


With the full systemd session the PartOf=GraphicalSession.target somewhat helps

I can reproduce this happening, but can't immediately manage to reproduce any ill-effect, it will be timing related.


I've thought of two remedies that I think will both work.


I would like it if someone is in a position to verify.

Solution 1:
Edit plasma-kglobalaccel.service and add to the service:
SuccessExitStatus=0 1


This will mean on the first time that the X11 connection is pulled out from under it, we won't try and restart.


Solution 2:

During plasma boot, call:
 systemctl --user reset-failed  

early in the boot, like in /etc/X11/Xsession.d


I would like both verified and we'll merge an implementation of both.
Comment 30 David Edmundson 2021-04-07 22:42:32 UTC
*** Bug 435486 has been marked as a duplicate of this bug. ***
Comment 31 flan_suse 2021-04-08 01:51:21 UTC
(In reply to David Edmundson from comment #29)
> I would like it if someone is in a position to verify.
> 
> Solution 1:
> Edit plasma-kglobalaccel.service and add to the service:
> SuccessExitStatus=0 1
> 
> 
> This will mean on the first time that the X11 connection is pulled out from
> under it, we won't try and restart.

This appears to work. I tried logging in and out and in and out and in and out as quickly as possible, yet it never hangs or freezes (let alone just sit at the SDDM greeter login screen for 3 minutes).

coredumpctl -r shows no entries for kglobalaccel5 either. (Some new ones for "org_kde_powerdevil" appeared, but that might just be a coincidence. (I hope!)

I'll try out Solution #2 as well.
Comment 32 flan_suse 2021-04-08 02:04:05 UTC
(In reply to David Edmundson from comment #29)
> Solution 2:
> 
> During plasma boot, call:
>  systemctl --user reset-failed  
> 
> early in the boot, like in /etc/X11/Xsession.d
> 
> 
> I would like both verified and we'll merge an implementation of both.

I undid the changes from Solution #1, and then followed Solution #2 as closely as possible.

1) I made an executable file named /etc/X11/xinit/xinitrc.d/99-reset-failed-user-service.sh

2) I filled it with the following:
#!/bin/sh
systemctl --user reset-failed

This also appears to solve the issue. The only difference is even though there is no apparent delay or freeze when re-logging in over and over and over, Solution #2 still populates "coredumpctl -r" with entries for "kglobalaccel5". Not sure if that means anything.

So in summary, Solution #1 and Solution #2 both seem to work, no matter how often nor how quickly I re-login. :)

The only caveat is there are still core dumps for kglobalaccel5 when using Solution #2.
Comment 33 mintjulep 2021-04-08 09:21:05 UTC
Ok, as for me, the first one didn't work : login logout make the same issue. It finaly start, after a very long time.

The second option is kind of out of reach for me, as I don't know how to call
systemctl --user reset-failed during boot
Comment 34 David Edmundson 2021-04-08 09:26:21 UTC
Thanks, I'll turn those into merge requests on all our services.
Comment 35 David Edmundson 2021-04-08 11:07:57 UTC
I am going for the double-fix so we handle it super safely

https://invent.kde.org/frameworks/kglobalaccel/-/merge_requests/17

https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/773
Comment 36 mintjulep 2021-04-08 11:19:04 UTC
Sweet !
When do you think it would be updated ?
Comment 37 flan_suse 2021-04-08 13:01:07 UTC
(In reply to mintjulep from comment #33)
> Ok, as for me, the first one didn't work : login logout make the same issue.
> It finaly start, after a very long time.
> 
> The second option is kind of out of reach for me, as I don't know how to call
> systemctl --user reset-failed during boot

Did you try out the method I used for Solution #2? Since you're running Arch and I'm on Manjaro, we should share similar base systems. :)

As for Solution #1, which file did you edit?
Comment 38 flan_suse 2021-04-08 13:09:06 UTC
(In reply to David Edmundson from comment #35)
> I am going for the double-fix so we handle it super safely
> 
> https://invent.kde.org/frameworks/kglobalaccel/-/merge_requests/17
> 
> https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/773

We are truly grateful to you devs! This was a near show-stopper bug for a common task (re-logging back into Plasma.)

Since I'm no programmer nor engineer, and my little brain barely grasps this stuff, I want to ask: are the KDE developers still going to investigate why kglobalaccel5 has been behaving this way for Plasma 5?

> What would be interesting to know is why kglobalaccel is getting started/restarted at this point.

Even with the above two fixes being applied, they seem to only address errant systemd units (i.e, plasma-kglobalaccel5.service), yet is the real issue deeper with kglobalaccel5 executable / service itself?

Correct me if I'm wrong, but in the meantime with these fixes, kglobalaccel5 is still behaving wonky at logout when X11 "is pulled out from under it" like a magic trick with a table cloth. Is it possible this can carry over to Plasma 6 and rear it's ugly head again?
Comment 39 mintjulep 2021-04-08 13:26:45 UTC
(In reply to flan_suse from comment #37)
> (In reply to mintjulep from comment #33)
> > Ok, as for me, the first one didn't work : login logout make the same issue.
> > It finaly start, after a very long time.
> > 
> > The second option is kind of out of reach for me, as I don't know how to call
> > systemctl --user reset-failed during boot
> 
> Did you try out the method I used for Solution #2? Since you're running Arch
> and I'm on Manjaro, we should share similar base systems. :)
> 
> As for Solution #1, which file did you edit?

I'm not a very experienced user so here's what I did :

systemctl edit --user plasma-kglobalaccel‧service

it opened this in vim :

### Editing /home/mint/.config/systemd/user/plasma-kglobalaccel‧service‧d/override‧conf
### Anything between here and the comment below will become the new contents of the file


### Lines below this comment will be discarded

### /usr/lib/systemd/user/plasma-kglobalaccel‧service
# [Unit]
# Description=KDE Global Shortcuts Server
# PartOf=graphical-session‧target
# 
# [Service]
# ExecStart=/usr/bin/kglobalaccel5
# BusName=org‧kde‧kglobalaccel
# Slice=background‧slice
# TimeoutSec=5sec
# Restart=on-failure

where I added "SuccesExitStatus=0 1 " this way :

### Editing /home/mint/.config/systemd/user/plasma-kglobalaccel‧service‧d/override‧conf
### Anything between here and the comment below will become the new contents of the file

SuccesExitStatus=0 1

### Lines below this comment will be discarded

### /usr/lib/systemd/user/plasma-kglobalaccel‧service
# [Unit]
# Description=KDE Global Shortcuts Server
# PartOf=graphical-session‧target
# 
# [Service]
# ExecStart=/usr/bin/kglobalaccel5
# BusName=org‧kde‧kglobalaccel
# Slice=background‧slice
# TimeoutSec=5sec
# Restart=on-failure

after checking, /home/mint/.config/systemd/user/plasma-kglobalaccel‧service‧d/override‧conf content is just :

SuccesExitStatus=0 1

When I log out log in, it bugged as ever (maybe took a little less time to finally start)
Comment 40 flan_suse 2021-04-08 13:46:20 UTC
The template you are presented with defaults to everything being "commented out" and thus ignored.

The file in its entirety should appear as such:

### Editing /home/mint/.config/systemd/user/plasma-kglobalaccel‧service‧d/override‧conf
### Anything between here and the comment below will become the new contents of the file

[Unit]
Description=KDE Global Shortcuts Server
PartOf=graphical-session.target

[Service]
ExecStart=/usr/bin/kglobalaccel5
BusName=org.kde.kglobalaccel
Slice=background.slice
TimeoutSec=5sec
Restart=on-failure
SuccessExitStatus=0 1

### Lines below this comment will be discarded

### /usr/lib/systemd/user/plasma-kglobalaccel‧service
# [Unit]
# Description=KDE Global Shortcuts Server
# PartOf=graphical-session‧target
# 
# [Service]
# ExecStart=/usr/bin/kglobalaccel5
# BusName=org‧kde‧kglobalaccel
# Slice=background‧slice
# TimeoutSec=5sec
# Restart=on-failure
Comment 41 mintjulep 2021-04-08 14:25:55 UTC
(In reply to flan_suse from comment #40)
> The template you are presented with defaults to everything being "commented
> out" and thus ignored.
> 
> The file in its entirety should appear as such:
> 
> ### Editing
> /home/mint/.config/systemd/user/plasma-kglobalaccel‧service‧d/override‧conf
> ### Anything between here and the comment below will become the new contents
> of the file
> 
> [Unit]
> Description=KDE Global Shortcuts Server
> PartOf=graphical-session‧target
> 
> [Service]
> ExecStart=/usr/bin/kglobalaccel5
> BusName=org‧kde‧kglobalaccel
> Slice=background‧slice
> TimeoutSec=5sec
> Restart=on-failure
> SuccessExitStatus=0 1
> 
> ### Lines below this comment will be discarded
> 
> ### /usr/lib/systemd/user/plasma-kglobalaccel‧service
> # [Unit]
> # Description=KDE Global Shortcuts Server
> # PartOf=graphical-session‧target
> # 
> # [Service]
> # ExecStart=/usr/bin/kglobalaccel5
> # BusName=org‧kde‧kglobalaccel
> # Slice=background‧slice
> # TimeoutSec=5sec
> # Restart=on-failure

Tried that, kglobalaccell never started and global shortcut where down after reboot :/
Maybe I did something worng ?

As for the 2nd solution, I don't know how to create an executable file like you did (and for the record, I don't understand what this solution is about. The first one I get it : we feed a parameter meaning that we don't care either kglobalaccel started or not)

if it's any help, here's the log from journal -f at reloging :

Apr 08 16:00:31 Indiana systemd[1001]: Failed to start KDE Plasma Workspace.
Apr 08 16:00:31 Indiana systemd[1001]: plasma-plasmashell‧service: Failed with result 'timeout'.
Apr 08 16:00:31 Indiana systemd[1001]: plasma-plasmashell‧service: start operation timed out. Terminating.
Apr 08 16:00:17 Indiana kded5[4063]: 3
Apr 08 16:00:17 Indiana kded5[4063]: 4
Apr 08 16:00:17 Indiana kded5[4063]: 
Apr 08 16:00:17 Indiana kded5[4063]: kcm_touchpad: Using X11 backend
Apr 08 16:00:17 Indiana NetworkManager[519]: <info>  [1617890417.1789] agent-manager: agent[f3c3c8c03ee7bb31,:1.223/org‧kde‧plasma‧networkmanagement/1000]: agent registered
Apr 08 16:00:17 Indiana kded5[4063]: org‧kde‧bolt‧kded: Couldn't connect to Bolt DBus daemon
Apr 08 16:00:17 Indiana kded5[4063]: org‧kde‧libkbolt: Failed to connect to Bolt manager DBus interface:
Apr 08 15:59:51 Indiana systemd[1001]: Starting KDE Plasma Workspace...
Apr 08 15:59:51 Indiana systemd[1001]: Started KDE Session Management Server.
Apr 08 15:59:27 Indiana systemd-timesyncd[506]: Timed out waiting for reply from 217.91.44.17:123 (3.arch‧pool‧ntp.org).
Apr 08 15:59:27 Indiana kactivitymanagerd[4093]: Couldn't start kglobalaccel from org‧kde‧kglobalaccel‧service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include>
Apr 08 15:59:27 Indiana kwin_x11[4065]: Couldn't start kglobalaccel from org‧kde‧kglobalaccel‧service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the rem>
Apr 08 15:59:27 Indiana kded5[4063]: Couldn't start kglobalaccel from org‧kde‧kglobalaccel‧service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote>
Apr 08 15:59:26 Indiana ksmserver[4064]: Couldn't start kglobalaccel from org‧kde‧kglobalaccel‧service: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the re>
Apr 08 15:59:19 Indiana dhcpcd[527]: wlp5s0: no IPv6 Routers available
Apr 08 15:59:18 Indiana kernel: audit: type=1110 audit(1617890358.836:386): pid=4154 uid=0 auid=1000 ses=12 msg='op=PAM:setcred grantors=pam_securetty,pam_shells,pam_faillock,pam_permit,pam_faillock acct="mint">
Apr 08 15:59:18 Indiana kernel: audit: type=1105 audit(1617890358.836:385): pid=4154 uid=0 auid=1000 ses=12 msg='op=PAM:session_open grantors=pam_loginuid,pam_keyinit,pam_limits,pam_unix,pam_permit,pam_mail,pam>
Apr 08 15:59:18 Indiana login[4154]: LOGIN ON tty2 BY mint
Apr 08 15:59:18 Indiana audit[4154]: CRED_REFR pid=4154 uid=0 auid=1000 ses=12 msg='op=PAM:setcred grantors=pam_securetty,pam_shells,pam_faillock,pam_permit,pam_faillock acct="mint" exe="/usr/bin/login" hostnam>
Apr 08 15:59:18 Indiana audit[4154]: USER_START pid=4154 uid=0 auid=1000 ses=12 msg='op=PAM:session_open grantors=pam_loginuid,pam_keyinit,pam_limits,pam_unix,pam_permit,pam_mail,pam_systemd,pam_env acct="mint">
Apr 08 15:59:18 Indiana login[4154]: pam_env(login:session): deprecated reading of user environment enabled
Comment 42 flan_suse 2021-04-08 15:00:28 UTC
(In reply to mintjulep from comment #41)
> As for the 2nd solution, I don't know how to create an executable file like
> you did

No problemo! The steps are something like this:

Create and edit the custom file:
sudo nano /etc/X11/xinit/xinitrc.d/99-reset-failed-user-service.sh

Fill it with these two lines:
#!/bin/sh
systemctl --user reset-failed

Now save and exit (with CTRL + X and choosing "y" if using nano text editor)

Now give it executable permission:
sudo chmod +x /etc/X11/xinit/xinitrc.d/99-reset-failed-user-service.sh

In the future, you can simply delete this custom file, as it's no longer needed if the updated KDE packages resolve this issue:
sudo rm /etc/X11/xinit/xinitrc.d/99-reset-failed-user-service.sh

Hope that helps. :)
Comment 43 mintjulep 2021-04-08 16:15:50 UTC
Ok !
followed your instructions (thank you very much by the way, I relay need to learn about shell scripts)
Tryed to logout login just after reboot, worked fine. Tryed to run some app (firefox) and logout login, worked fine. Tryed to run several app, wait for a couple minute with normal usage, logout, login and...
It worked too !
Seems like a resolved bug to me !!
Keep you posted if I have any more issue.

Thank you very much to everybody who helped on this. This is not a very important usecase (less than ever as with an ssd disk, complete reboot is incredibly fast) but it has been bugging me for month to have this little malfunction that I couldn't solve.
Comment 44 Nate Graham 2021-04-12 17:33:10 UTC
*** Bug 429415 has been marked as a duplicate of this bug. ***
Comment 45 Nate Graham 2021-04-12 18:40:12 UTC
*** Bug 434369 has been marked as a duplicate of this bug. ***