Bug 337164

Summary: plasmashell does not re-launch itself when killed by KWin due to a hanging window
Product: [Plasma] plasmashell Reporter: Harald Sitter <sitter>
Component: generalAssignee: Sebastian Kügler <sebas>
Status: CONFIRMED ---    
Severity: normal CC: aleixpol, bshah, justin.zobel, kde, nate, notmart
Priority: NOR    
Version First Reported In: master   
Target Milestone: 1.0   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: screenshot

Description Harald Sitter 2014-07-07 08:17:23 UTC
when for example the download-widgets window causes a deadlock in plasmashell (see bug #337077) and the user tries to close the apparently unresponsive window via the window decoration kwin will detect that the application doesn't actually quit (what with it being in a deadlock) and offers to kill it. for plasmashell this however has the side effect that the user is then left without a discoverable way to manually recover (logout/shutdown) and gets to sit in front of a black background, crying (most likely).

(relevant invalid kwin bug #337163)

Reproducible: Always



Expected Results:  
Plasmashell should restart itself when killed by kwin. In fact perhaps one should think about always forcing a restart of the shell when killed by means other than an actual sig quit?
Comment 1 Harald Sitter 2014-07-07 08:20:00 UTC
Created attachment 87608 [details]
screenshot
Comment 2 Marco Martin 2014-07-08 12:01:42 UTC
perhaps the behavior is correct, but in case it's plasmashell (and only plasmashell) it should restart it right after haviung killed it?
Comment 3 Harald Sitter 2014-07-08 12:29:59 UTC
Please note the kwin bug report. They don't want to support client specific workarounds which seems reasonable to me. Generally speaking I can totally see this as a plasma specific problem, much like pulseaudio, plasma probably should restart just about always unless instructed not do so or having already done so a number of times in the immediate past (i.e. to prevent getting stuck in a restart loop).

Simplest approach to this probably would be a kded module that watches plasmashell and klaunches it when it disappears.

(FTR: the way pulseaudio achieves respawns is by having libpulse talk to the daemon and if there is none it will try to launch one, not sure that is a viable scheme for plasma though)
Comment 4 Justin Zobel 2020-10-25 08:58:13 UTC
Harald is this behavior still present in current versions?
Comment 5 Harald Sitter 2020-10-30 10:49:07 UTC
Yep.

- open wallpaper config
- killall -STOP plasmashell # to simulate a deadlock
- click close on wallpaper config
- kwin offers to kill plasmashell and leave you stranded
Comment 6 Justin Zobel 2020-10-31 00:01:23 UTC
Confirmed on KDE Neon User Edition. I'm not even prompted to kill plasmashell, it just kills everything and I'm left with my konsole.
Comment 7 Nate Graham 2021-08-31 19:29:28 UTC
The real problem here seems to be that Plasma does not automatically restart itself when this happens, as it does in other cases.