This is simple to reproduce. The application has disappeared from the screen but continues to run.
It looks like qtmir is closing the window (as requested) but no word gets out to the actual process (ie. there is no session management). I'm suspecting the Unity 8 lifecycle for desktops is not in place yet. Here's a snippet from $HOME/.cahe/upstart/unity8.log. [2017-03-20:19:34:52.953] qtmir.sessions: TaskController::onSessionStarting - sessionName=sol^M [2017-03-20:19:34:52.954] qtmir.applications: Application["sol"]::setSession(session=qtmir::Session(0x4ecb3290))^M [2017-03-20:19:34:53.457] file:///usr/lib/x86_64-linux-gnu/qt5/qml/Ubuntu/Components/1.3/Icon.qml:115:5: QML Image: Cannot open: file:///home/stephenw/.face^M [2017-03-20:19:34:57.992] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::MirSurface(type=normal,state=restored,size=(480,376),parentSurface=QObject(0x0))^M [2017-03-20:19:34:58.015] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::registerView(268052752) after=1^M [2017-03-20:19:34:58.032] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setKeymap("us")^M [2017-03-20:19:34:58.467] toplevelwindowmodel: prependSurface appId=sol surface=qtmir::MirSurface(0x3c828f80), filling out placeholder. after: (index=0,appId=sol,surface=0x3c828f80,id=11),(index=1,appId=unity8-dash,surface=0x225db2f0,id=4)^M [2017-03-20:19:34:58.468] toplevelwindowmodel: setFocusedWindow(0x0)^M [2017-03-20:19:34:58.499] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setFocused(true)^M [2017-03-20:19:34:58.514] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setReady()^M [2017-03-20:19:34:58.520] qtmir.applications: Application["sol"]::setInternalState(state=Running)^M [2017-03-20:19:34:58.537] toplevelwindowmodel: setFocusedWindow(Window[0x28c28060, id=11, MirSurface[0x3c828f80,"AisleRiot"]])^M [2017-03-20:19:34:58.664] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::requestState(restored)^M [2017-03-20:19:34:58.673] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::updateExposure(true)^M [2017-03-20:19:35:19.651] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::MirSurface(type=menu,state=restored,size=(172,66),parentSurface=qtmir::MirSurface(0x3c828f80))^M [2017-03-20:19:35:19.801] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::registerView(745266864) after=1^M [2017-03-20:19:35:20.080] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setFocused(false)^M [2017-03-20:19:35:20.093] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::setFocused(true)^M [2017-03-20:19:35:20.098] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::setReady()^M [2017-03-20:19:35:20.123] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::updateExposure(true)^M [2017-03-20:19:35:20.126] toplevelwindowmodel: setFocusedWindow(Window[0x33e53dc0, id=12, MirSurface[0x28beec90,"AisleRiot"]])^M [2017-03-20:19:35:20.128] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::setKeymap("us")^M [2017-03-20:19:35:23.549] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::setLive(false)^M [2017-03-20:19:35:23.552] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::unregisterView(745266864) after=0 live=false^M [2017-03-20:19:35:23.553] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::updateExposure(false)^M [2017-03-20:19:35:23.555] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setFocused(true)^M [2017-03-20:19:35:23.622] toplevelwindowmodel: setFocusedWindow(Window[0x28c28060, id=11, MirSurface[0x3c828f80,"Klondike"]])^M [2017-03-20:19:35:23.625] qtmir.surfaces: MirSurface[0x28beec90,"sol"]::~MirSurface() viewCount=0^M [2017-03-20:19:35:23.684] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::MirSurface(type=dialog,state=restored,size=(468,353),parentSurface=qtmir::MirSurface(0x3c828f80))^M [2017-03-20:19:35:23.711] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::registerView(744596304) after=1^M [2017-03-20:19:35:23.893] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setFocused(false)^M [2017-03-20:19:35:23.904] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::setFocused(true)^M [2017-03-20:19:35:23.911] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::setReady()^M [2017-03-20:19:35:23.921] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::updateExposure(true)^M [2017-03-20:19:35:23.923] toplevelwindowmodel: setFocusedWindow(Window[0x2e53a140, id=13, MirSurface[0x35577d70,"About Aisleriot"]])^M [2017-03-20:19:35:23.924] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::setKeymap("us")^M [2017-03-20:19:35:26.995] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::activate()^M [2017-03-20:19:35:57.911] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::close()^M [2017-03-20:19:36:00.995] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::onCloseTimedOut()^M [2017-03-20:19:36:01.013] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::setLive(false)^M [2017-03-20:19:36:01.018] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::unregisterView(268052752) after=0 live=false^M [2017-03-20:19:36:01.020] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::updateExposure(false)^M [2017-03-20:19:36:01.025] qtmir.surfaces: MirSurface[0x3c828f80,"sol"]::~MirSurface() viewCount=0^M [2017-03-20:19:36:01.085] toplevelwindowmodel: removeAt after (index=0,appId=unity8-dash,surface=0x225db2f0,id=4)^M [2017-03-20:19:36:01.136] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::unregisterView(744596304) after=0 live=true^M [2017-03-20:19:36:01.138] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::updateExposure(false)^M [2017-03-20:19:37:16.440] qtmir.surfaces: MirSurface[0x225db2f0,"unity8-dash"]::activate()^M [2017-03-20:19:37:16.453] qtmir.surfaces: MirSurface[0x35577d70,"sol"]::setFocused(false)^M [2017-03-20:19:37:16.457] qtmir.surfaces: MirSurface[0x225db2f0,"unity8-dash"]::setFocused(true)^M [2017-03-20:19:37:16.485] toplevelwindowmodel: setFocusedWindow(Window[0x336acfc0, id=4, MirSurface[0x225db2f0,"Scopes"]])^M The process tree is still intact. Here's the relevant snippet from $(ps -fax). 18164 ? Ss 0:00 \_ /usr/bin/python3 /usr/bin/libertine-launch /usr/games/sol 18165 ? Sl 7:19 \_ Xmir -rootless -displayfd 3 -mir sol 18171 ? Sl 0:00 \_ pasted 18172 ? Sl 0:00 \_ /usr/games/sol Using $(lsof) I can see that Xmir is still connected to the Unity 8 process over the Mir socket. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to unity8 in Ubuntu. https://bugs.launchpad.net/bugs/1671731 Title: [xmir] closing an app while a child window is opened leaves an Xmir process opened eating 100% CPU Status in Canonical System Image: Confirmed Status in ubuntu-app-launch package in Ubuntu: New Status in unity8 package in Ubuntu: New Status in xorg-server package in Ubuntu: New Bug description: Ubuntu 17.04 Unity 8 [xmir] closing an app while a child window is opened leaves an Xmir process opened eating 100% CPU launch solitaire (just click on the sol icon from launcher, it will just run on Xmir) open the about window from the menu (Help \ About) now close the main window now top in a terminal (see attached) To manage notifications about this bug go to: https://bugs.launchpad.net/canonical-devices-system-image/+bug/1671731/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp