Bug 431450 - git-master regression: Alt + Tab out of Wine DXVK fullscreen windows makes it freeze
Summary: git-master regression: Alt + Tab out of Wine DXVK fullscreen windows makes it...
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: core (show other bugs)
Version: git master
Platform: Other Linux
: HI normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: regression
: 431441 (view as bug list)
Depends on:
Blocks:
 
Reported: 2021-01-11 16:54 UTC by tempel.julian
Modified: 2021-01-12 17:28 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Attaching the usual qdbus org.kde.KWin /KWin supportInformation (6.38 KB, text/plain)
2021-01-11 17:32 UTC, David Rubio
Details
xprop output of Unigine Valley Benchmark window (7.78 KB, text/plain)
2021-01-12 07:40 UTC, Vlad Zahorodnii
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tempel.julian 2021-01-11 16:54:07 UTC
SUMMARY

When starting a game in Wine fullscreen with DXVK and then pressing Alt + Tab, the window content freezes/turns black when trying to navigate back into the fullscreen window.

STEPS TO REPRODUCE
1. Install latest wine-staging from Arch repo, install DXVK into the prefix and e.g. install Windows version of free Unigine Valley into the prefix and run it in fullscreen.
https://benchmark.unigine.com/valley
(navigate into "Unigine/Valley Benchmark 1.0/bin" and run "wine browser_x86.exe -config ../data/launcher/launcher.xml")


2. Alt + tab to desktop (or change virtual desktop).


3. Navigate back into fullscreen window.

OBSERVED RESULT

The window content freezes or stays black.


EXPECTED RESULT

With Kwin 5.20.5, alt + tabbing out and back into Wine fullscreen windows works normally. This has regressed with kwin git-master.

Workaround: Use borderless mode of games inside wine.

This also happens with compositing entirely disabled before the start of the game/application. The issue seems to occur with several, if not any game.


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Arch 5.10
KDE Plasma Version: KWin git-master 8d84fe4b6ae26c501e416a5bc5eee8f5cf4a02bd
Mesa 21 git-master + xf86-video-amdgpu, RX 5700 XT
single 1440p display
Comment 1 David Rubio 2021-01-11 17:32:07 UTC
Created attachment 134748 [details]
Attaching the usual qdbus org.kde.KWin /KWin supportInformation

As this one is a more general report, maybe worth merging the content of 431441 into this one. 

I can confirm this issue. Video: https://www.youtube.com/watch?v=xwJplgxeZyQ
Comment 2 Vlad Zahorodnii 2021-01-11 17:52:22 UTC
*** Bug 431441 has been marked as a duplicate of this bug. ***
Comment 3 Vlad Zahorodnii 2021-01-12 07:40:18 UTC
Created attachment 134758 [details]
xprop output of Unigine Valley Benchmark window

It doesn't look like a regression that was introduced with the recent rewrite of compositing scheduling. Phew!

After alt-tabbing, the Unigine window has _NET_WM_STATE_FULLSCREEN, _NET_WM_STATE_ABOVE, _NET_WM_STATE_STAYS_ON_TOP states.

This explains why the benchmark window covers other windows, it has the "keep above" state.

So far, I cannot really say if it's indeed a kwin regression. But yeah, it's odd.
Comment 4 Vlad Zahorodnii 2021-01-12 08:03:06 UTC
Cannot reproduce it on Plasma/5.20.

There was a patch a couple of months ago that tweaked some window minimization bits https://invent.kde.org/plasma/kwin/-/commit/bf5155f82b1655a98311a73fa466484862f1cd09, it's quite possible that it "broke" games that have bad motif hints.
Comment 5 Bug Janitor Service 2021-01-12 09:06:40 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/586
Comment 6 Vlad Zahorodnii 2021-01-12 10:26:09 UTC
Git commit 0dd79ddb4a1d064c59994bbdcf93de52f56b25b1 by Vlad Zahorodnii.
Committed on 12/01/2021 at 10:25.
Pushed by vladz into branch 'master'.

Revert "fix: Restore the default properties of dialog window so that the max and min buttons can be customized"

This reverts commit bf5155f82b1655a98311a73fa466484862f1cd09.

Maximize and minimize function hints provided by some applications are
bogus. This in its turn breaks video games that minimize themselves when
they loose input focus.

Ideally, the window manager should not be concerned about Motif hints
provided by NetWM applications as they set the window type.

M  +0    -4    x11client.cpp

https://invent.kde.org/plasma/kwin/commit/0dd79ddb4a1d064c59994bbdcf93de52f56b25b1
Comment 7 tempel.julian 2021-01-12 12:08:17 UTC
I can confirm that the issue is gone with the commit reverted.
Comment 8 Noah Davis 2021-01-12 17:27:01 UTC
I can't reproduce this bug using git master KWin (git master for all KDE software) and git master DXVK.

I followed the instructions for compiling and installing DXVK provided by the readme in the DXVK repo.

My system info:

Operating System: openSUSE Tumbleweed 20210108
KDE Plasma Version: 5.20.80
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2
Kernel Version: 5.10.1-1-default
OS Type: 64-bit
Processors: 4 × Intel® Core™ i7-6500U CPU @ 2.50GHz
Memory: 7.6 GiB of RAM
Graphics Processor: Mesa DRI Intel® HD Graphics 520
Comment 9 Noah Davis 2021-01-12 17:28:30 UTC
To be clear, this is git master KWin from yesterday, not today after the revert