Bug 455222

Summary: Exiting full-screen causes superfluous IDLE_NOTIFY messages in XWayland
Product: [Plasma] kwin Reporter: pixelcluster
Component: wayland-genericAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: normal CC: nate
Priority: NOR    
Version First Reported In: 5.24.5   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description pixelcluster 2022-06-13 19:30:36 UTC
See also https://gitlab.freedesktop.org/xorg/xserver/-/issues/1351:
I already filed an issue in the xserver repository, but after finding that I could not reproduce this with other compositors I believe this is a KWin issue.

The issue shows for me when running Vulkan apps through RADV: If these Vulkan apps are full-screen, and I switch to another window (e. g. using Alt+Tab), these apps crash because RADV is triggering an assertion failure, which is caused by some pixmaps receiving an IDLE_NOTIFY event more than once. AFAIK windowing code is shared between RADV and anv, so I think this issue should be reproducible with Intel cards as well.

STEPS TO REPRODUCE
1. Run any Vulkan application in X11 in full-screen (maximizing the window isn't sufficient). Full-screen games using Proton/vkd3d exhibit the issue for me.
2. Switch away from the full-screen app to another window using Alt+Tab.

OBSERVED RESULT
An assertion failure is triggered inside RADV's X11 presentation handling code, making the Vulkan application crash.

EXPECTED RESULT
The application continues to run in the background.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora Linux 36 (kernel 5.17.13)
KDE Plasma Version: 5.24.5
KDE Frameworks Version: 5.93.0
Qt Version: 5.15.3
Comment 1 pixelcluster 2022-06-21 09:57:22 UTC
A fix for this has been merged in XWayland (https://gitlab.freedesktop.org/xorg/xserver/-/issues/1351, https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/910).