https://bugs.winehq.org/show_bug.cgi?id=47428
Bug ID: 47428 Summary: mouse input skipping / jitter in conjunction with xf86-video-amdgpu in almost every game Product: Wine Version: 4.10 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: tempel.julian@gmail.com Distribution: ---
There is extreme mouse skipping in various games. This happens mostly with vsync, e.g. in TESV: Oblivion, but it can also occur without vsync, though more subtle (e.g. in Hitman 2 of 2018). Performance in general is fine, also when there is keyboard input. But as soon as there is any mouse movement, either extreme frametime spikes happen or the mouse input is jittery in general: https://abload.de/img/screenshot_20190527_1t1ktp.png
This happens only when both xf86-video-amdgpu and amdgpu.dc=1 (default since Linux 4.17, required for FreeSync and GPUs since Vega) are used at the same time. With modesetting Xorg DDX driver, the issue does not occur. However, it doesn't support FreeSync and enforces vsync all the time with amdgpu.dc=1, which is not great either.
This is not limited to WineD3D, it happens with Gallium Nine and DXVK as well.
There also is this ticket for the xf86-video-amdgpu driver regarding this issue, but no solution has been proposed so far: https://bugs.freedesktop.org/show_bug.cgi?id=110659
Only games in Wine seem to be affected, native modern Linux games like Rise of the Tomb Raider (Vulkan) or Hitman 2016 (OpenGL) don't show this issue. Thus perhaps there is the slight chance that the issue can be fixed in Wine, if nothing happens for the xf86 driver.
It seems to happen with recent and older Wine versions. I tested regular wine 4.11 and Proton 3.7-8. Attached is a log file for TESV: Oblivion, but I suppose it doesn't show anything interesting. I decided to classify this issue as "major", as it doesn't seem to be limited to single titles and can render games unplayable.
https://bugs.winehq.org/show_bug.cgi?id=47428
tempel.julian@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|4.10 |4.11
https://bugs.winehq.org/show_bug.cgi?id=47428
--- Comment #1 from tempel.julian@gmail.com --- Created attachment 64776 --> https://bugs.winehq.org/attachment.cgi?id=64776 TESV: Oblivion log, recorded while the issue occured (which is always)
https://bugs.winehq.org/show_bug.cgi?id=47428
tempel.julian@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |tempel.julian@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=47428
Olivier F. R. Dierick o.dierick@piezo-forte.be changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |o.dierick@piezo-forte.be
--- Comment #2 from Olivier F. R. Dierick o.dierick@piezo-forte.be --- Hello,
Is it the same issue as bug 47365?
Regards.
https://bugs.winehq.org/show_bug.cgi?id=47428
--- Comment #3 from tempel.julian@gmail.com --- (In reply to Olivier F. R. Dierick from comment #2)
Hello,
Is it the same issue as bug 47365?
Regards.
The assumption lies near, however that vkquake issue happens also with modesetting DDX and also in a Wayland session via xwayland (though not as distinct). Games like Hitman 2 or TESV: Oblivion are completely free of any mouse stutter with modesetting DDX.
https://bugs.winehq.org/show_bug.cgi?id=47428
--- Comment #4 from tempel.julian@gmail.com --- Made some progress: Setting MouseWarpOverride = disable fixes the stutter in TESV: Oblivion with both wined3d and Gallium Nine. Accordingly, there are also no more frametime spikes reported in the Mesa overlay graph when moving the mouse.
But the Hitman 2 issue seems to be different: The mouse cursor just skips a lot, but doesn't affect rendering performance. This can already be seen in the game's menu when moving the cursor, it partially refuses to move and can jump back. Disabling cursor lock for fullscreen fixes the mouse skipping in the menu, but it makes the camera not freely movable while in game. MouseWarpOverride = disable doesn't help here, and MouseWarpOverride = force locks the cursor in the middle of the screen. Wine's virtual desktop doesn't help.
Still there is the connection to xf86-video-amdgpu + amdgpu.dc=1, as both issues don't exist without that combination.
https://bugs.winehq.org/show_bug.cgi?id=47428
tempel.julian@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED
--- Comment #5 from tempel.julian@gmail.com --- Was fixed in 4.17 with "winex11.drv: Throttle calls to XResetScreenSaver.".
https://bugs.winehq.org/show_bug.cgi?id=47428
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |eb7353ab0ce66408aadbf4394a1 | |77320fed829e5
https://bugs.winehq.org/show_bug.cgi?id=47428
Olivier F. R. Dierick o.dierick@piezo-forte.be changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1|eb7353ab0ce66408aadbf4394a1 |cb703739e5c138e3beffab321b8 |77320fed829e5 |4edb129156000
--- Comment #6 from Olivier F. R. Dierick o.dierick@piezo-forte.be --- Hello,
(In reply to tempel.julian from comment #5)
Was fixed in 4.17 with "winex11.drv: Throttle calls to XResetScreenSaver.".
Thanks for the update.
Thanks to Jeff Zaroyko for filing Fixed by SHA1 field, but it's better to use wine.git commits rather than downstream clone.
https://github.com/ValveSoftware/wine/commit/eb7353ab0ce66408aadbf4394a17732...
is upstream commit:
https://source.winehq.org/git/wine.git/commit/cb703739e5c138e3beffab321b84ed...
Regards.
https://bugs.winehq.org/show_bug.cgi?id=47428
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 5.0-rc3.
https://bugs.winehq.org/show_bug.cgi?id=47428
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Component|-unknown |winex11.drv