Public bug reported: The issue has initially been discovered for resolution 1366x768 on a DisplayLink (evdi)-backed device, but applies also to UDL, as well as reverse prime setups (rendering on Intel, output through NVidia).
The issue manifests with 1366x768 and several other resolutions only, due to the fact that the GPU seems to use 64-aligned framebuffer stride. This is "accidentally" fine with the most popular VGA resolutions (e.g. assuming 32bits/4bytes per pixel and FullHD, the stride would be 1920*4 -> 7680, which is divisible by 64 w/o a remainder, yet 1366*4=5464, 5464/64 = 85.375). The proposed fix is to update the stride with the GPU-provided value instead of the Xorg-calculated one at the stage of sharing the pixmap between GPUs. Doing that at earlier stage would probably require distinguishing between allocation of a FB and a generic pixmap, which is the same for Xorg. Issue for sure was seen on 18.04 and 19.04, probably still there for 20.04. Upstream report: https://gitlab.freedesktop.org/xorg/xserver/-/issues/889 And posted (not yet integrated) fix: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/496 ** Affects: xorg-server (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu-X, which is subscribed to xorg-server in Ubuntu. https://bugs.launchpad.net/bugs/1892136 Title: reverse prime produces corrupted output on specific resolutions To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1892136/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-x-swat Post to : ubuntu-x-swat@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-x-swat More help : https://help.launchpad.net/ListHelp