Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: windows not render or kill after waking from screen power saving #467

Open
infra-monkey opened this issue Jan 11, 2023 · 4 comments
Labels
bug Something isn't working

Comments

@infra-monkey
Copy link

infra-monkey commented Jan 11, 2023

Summary

When waking up the screen from power saving, some windows or apps are not rendered or killed.

Steps to Reproduce

  1. in desktop 1: open 2 windows of firefox wayland
  2. in desktop 2: open 3 konsole
  3. wait for screen to be turned off for power saving
  4. wake up the screen

Expected behavior

After waking up the screen, all windows and applications should be up and active as they were before the screen was turned off.

Screenshots

Before screen off:
desktop1-presleep
desktop2-presleep
After screen back up:
desktop1-postsleep
desktop2-postsleep

Bismuth version

3.1.4

KDE Plasma version

5.26.5

The platform KWin is running on

Wayland

Additional context

Distribution: Fedora 37

From my example steps, I have 2 behaviors:

  • one of the firefox windows is killed (it takes the whole layout and the desktop preview shows only one window
  • all but one konsole window fail to render (shown in the desktop preview, alive window doesn't take the whole layout), only the master window survives

When disabling tiling, I do not experience this behavior, which leads me to think it is a bismuth issue.

Note: This issue doesn't occure when using X11. So maybe a kwin_wayland issue in this context

@infra-monkey infra-monkey added the bug Something isn't working label Jan 11, 2023
@TinfoilSubmarine
Copy link

I am also having this issue.

@infra-monkey
Copy link
Author

So enabling bismuth debug logs doesn't help.

Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd[1]: systemd-suspend.service: Deactivated successfully.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd[1]: Finished systemd-suspend.service - System Suspend.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd[1]: Stopped target sleep.target - Sleep.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd[1]: Reached target suspend.target - Suspend.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd[1]: Stopped target suspend.target - Suspend.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan systemd-logind[1075]: Operation 'sleep' finished.
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan NetworkManager[1120]: <info>  [1673784503.0239] manager: sleep: wake requested (sleeping: yes  enabled: yes)
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan NetworkManager[1120]: <info>  [1673784503.0244] device (enp37s0): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kernel: Generic FE-GE Realtek PHY r8169-0-2500:00: attached PHY driver (mii_bus:phy_addr=r8169-0-2500:00, irq=MAC)
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kernel: r8169 0000:25:00.0 enp37s0: Link is Down
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan NetworkManager[1120]: <info>  [1673784503.2136] manager: NetworkManager state is now CONNECTED_LOCAL
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_davgroupware_resource[2086]: org.kde.pim.davresource: Unable to fetch collections 300 "There was a problem with the request.\nHTTP error (0)."
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_davgroupware_resource[2085]: org.kde.pim.davresource: Unable to fetch collections 300 "There was a problem with the request.\nHTTP error (0)."
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan PackageKit[1955]: get-updates transaction /11344_aeaaaddb from uid 1678900673 finished with success after 212ms
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kwalletd5[1447]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan polkit-kde-authentication-agent-1[1684]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kalendarac[1881]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_indexing_agent[2097]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kactivitymanagerd[1669]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_newmailnotifier_agent[2173]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_imap_resource[2095]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_mailmerge_agent[2130]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan krunner[2545]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_mailfilter_agent[2121]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan xdg-desktop-portal-kde[1686]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan konsole[4736]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_akonotes_resource[2081]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kontact[3766]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_contacts_resource[2084]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_davgroupware_resource[2085]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan DiscoverNotifier[1880]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_ical_resource[2091]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_imap_resource[2096]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_followupreminder_agent[2087]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_imap_resource[2094]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan baloorunner[2715]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_davgroupware_resource[2086]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_imap_resource[2092]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_birthdays_resource[2083]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_google_resource[2088]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_maildispatcher_agent[2106]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan konsole[3568]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_unifiedmailbox_agent[2186]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_maildir_resource[2099]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_sendlater_agent[2179]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_control[1982]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_migration_agent[2136]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kiod5[2417]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan akonadi_archivemail_agent[2082]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan org_kde_powerdevil[1685]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:23 monkey-desktop.dyn.empire.lan kded5[1604]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan systemd[1429]: Starting plasma-kscreen-osd.service - KScreen OSD service...
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5337]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5341]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5339]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan systemd[1429]: Started plasma-kscreen-osd.service - KScreen OSD service.
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5342]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5348]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5361]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:99: TypeError: Cannot read property 'pluginName' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:78: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:81: TypeError: Cannot read property 'pluginName' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:83: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:84: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:85: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:86: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:87: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5371]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:19: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:20: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:21: TypeError: Cannot read property 'configuration' of null
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5381]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kscreen_osd_service[5366]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kcminit[5387]: qt.qpa.wayland: Creating a fake screen in order for Qt not to crash
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kded5[1604]: kscreen.kded: Config does not have at least one screen enabled, WILL NOT save this config, this is not what user wants.
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: onWindowGeometryChanged,[object Object]
Jan 15 13:08:24 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: Client added: KWin::XdgToplevelWindow(0x557163da2070)
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: onWindowAdded,[object Object]
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: Window becomes unmanaged and gets removed :( The client was KWin::XdgToplevelWindow(0x557163da2070)
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan plasmashell[1638]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: onWindowGeometryChanged,[object Object]
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: Client added: KWin::XdgToplevelWindow(0x557164167240)
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: onWindowAdded,[object Object]
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrange
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: arrangeScreen/finished,[object Object]
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: Window becomes unmanaged and gets removed :( The client was KWin::XdgToplevelWindow(0x557164167240)
Jan 15 13:08:25 monkey-desktop.dyn.empire.lan kwin_wayland[1487]: org.kde.bismuth: onWindowGeometryChanged,[object Object]

On the bright side, this issue doesn't appear when using X11 .....
But then you get some X11 unrelated issues....
You can consider using X11 being a workaround for this issue.

@infra-monkey
Copy link
Author

I just tested bismuth on Kinoite beta (kde 5.27 beta) and it seems to be fixed.
I suspect it is due to kwin bug https://bugs.kde.org/show_bug.cgi?id=464047

Can someone double check on 5.27 beta?

@max0x7ba
Copy link

In KDE Neon 2.27 with X11 Konsole windows get maximized on waking the screen up. They have to be unmaximized to restore layout.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants