When testing the latest kernel from drm-tip (as of writing, this is 294d5056c1f3 ("drm-tip: 2019y-06m-24d-17h-20m-57s UTC integration manifest") ), running vulkan-cube on a gnome-shell wayland session (so, since vulkan-cube doesn't support native wayland this means it's running through Xwayland) shows pretty significant stuttering issues. See the video here for what it looks like:
This was reproduced with a Vega 10 Pro SSG:
26:00.0 VGA compatible controller : Advanced Micro Devices, Inc. [AMD/ATI] Vega 10 XT [Radeon PRO SSG] [1002:6862]
Mesa version: 19.0.6-1.fc30
gnome-shell version: 3.32.2-2.fc30
Xwayland version: 1.20.4-3.fc30
This is an Xwayland issue, due to it only using a single buffer for sending contents to the Wayland server.
(In reply to Michel Dänzer from comment #1)
> This is an Xwayland issue, due to it only using a single buffer for sending
> contents to the Wayland server.
Xwayland being hardware agnostic, if Xwayland was the problem, I'd expect the issue to occur with any hardware., and yet I don't see this on intel for example.
Lyude, you mention this is with drm-tip, can you confirm if this started with the DRM update or does it occur with the current stable code as well?
Last thing, with single buffer, I would expect tearing more than stuttering, from the screencast, it looks like it's flipping to a back buffer which wasn't updated in time.
, I can reproduce on intel(In reply to Olivier Fourdan from comment #2)
> Xwayland being hardware agnostic, if Xwayland was the problem, I'd expect
> the issue to occur with any hardware., and yet I don't see this on intel for
I take that back, I reproduced on intel as well.
(In reply to Olivier Fourdan from comment #2)
> Last thing, with single buffer, I would expect tearing more than stuttering,
It's a race between the Wayland server reading from the buffer and Xwayland drawing to it. This can result in tearing if those two operations can actually run concurrently, which is the case with amdgpu, but not yet with most other drivers AFAIK.
Either way, it can result in the Wayland server already displaying a client frame too early sometimes, hence the stuttering.
Moved to https://gitlab.freedesktop.org/xorg/xserver/issues/835