Bug 337163 - when plasmashell gets stuck kwin offers to kill it, doesn't allow for autorecovery
Summary: when plasmashell gets stuck kwin offers to kill it, doesn't allow for autorec...
Status: RESOLVED INTENTIONAL
Alias: None
Product: kwin
Classification: Plasma
Component: general (other bugs)
Version First Reported In: git master
Platform: unspecified Linux
: NOR wishlist
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-07 07:54 UTC by Harald Sitter
Modified: 2014-07-07 08:25 UTC (History)
0 users

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 Harald Sitter 2014-07-07 07:54:26 UTC
when/if plasmashell gets itself into a bit of a sticky situation kwin will detect this and offer to kill the shell. however neither plasma nor kwin do anything to recover the shell again.

this effectively leaves the user on a black background (unless there was a window open anyway) without any discoverable way of recovering things manually (read: logout/shutdown) which is incredibly rude and incredibly bad from a UX perspective.

kwin should autorestart whatever it killed or plasmashell should autorecover when killed.

Reproducible: Always
Comment 1 Martin Flöser 2014-07-07 08:02:49 UTC
This is outside the scope of KWin's killer. The killer is only shown if you click the close button. If one uses the ctrl+alt+esc key sequence it's not the killer at all. Offering a restart for an window which is supposed to be closed doesn't make any sense at all. KWin doesn't detect a hanging application, only a not closing application that is quite a difference.
Comment 2 Thomas Lübking 2014-07-07 08:15:35 UTC
kwin will detect a pending close request for plasma-desktop in-process diaglogs.

this one's not simple.

a) kwin cannot restart the hanging client.
this does usually not make any sense and we could *at best* (on linux, with mounted /proc) restore the commandline, but not the state (you loose 10 kwrite docs and get one empty window in return)
b) plasma-desktop (or anything) cannot restart itself for a sigkill (let's assume it would be technically possible: the user could never again get rid of a plasma-desktop that's life-locked in some plasmoid)

-> plasma-desktop would probably require a watchdog kded module
it had to deactivate it on sigterm
the dog needs to ask before recovering plasma-desktop

at least i don't see another way.
Comment 3 Harald Sitter 2014-07-07 08:25:27 UTC
plasma bug report is bug #337164

I didn't actually realize that the kwin interaction only kicks in when one tries to close a window, makes more sense that way.