Since upgrading to Fedora 35, I have encountered significant artifacting on various hardware. Here are more details:
Login manager: lightdm or gdm
Session manager: xfce4
Window manager: i3
Hardware: issue encountered on
HP ZBook Fury 15 G7 (CometLake-H GT2 UHD Graphics + NVIDIA Quadro T2000 Mobile Max-Q), using nouveau for the NVIDIA GPU
Lenovo Legion 7i 15IMH05 (CometLake-H GT2 UHD Graphics + NVIDIA Geforce RTX 2080 SUPER Mobile Max-Q), using the proprietary driver for the NVIDIA GPU
Toshiba TECRA Z50-E (Intel UHD Graphics 620)
The artifacts manifest as screen tearing (always) and as “horizontal 8x1 lines” covering zones that get repainted on screen. I can try to film them if it could help debugging.
I tried using a compositor (compton or picom), but it adds noticeable input lag, especially on high refresh rate screens (the Legion 7i for example), which make it unusable.
GNOME (Wayland and Xorg) seems unaffected. Sway (Wayland equivalent of i3) seems unaffected also.
Those artifacts weren’t present on Fedora 34, so I assume something changed regarding the Intel graphics driver? If so, does anyone have pointers on this?
All 3 affected machines were running up-to-date Fedora 35 Workstation installs. 2 of them were upgraded from Fedora 34, and one of them installed directly from a Fedora 35 ISO.
GNOME (both Xorg and Wayland sessions) and Sway (Wayland only) are not affected. XFCE with i3 (Xorg only), without a compositor, has the issue since Fedora 35. I’ll try and see if other combinations are affected.
Here is a picture of the artifacts (see the black lines below the terminal window). Those appear on redraws and linger until the next redraw or sometimes longer. They appear by dragging a window above another one (this case here) or inside windows (when interacting with an application) :
Thanks @grumpey, I have just tried the TripleBuffer option, unfortunately I still encounter the issue I described in the bugtracker: apps using the GPU fail to redraw when the TearFree option is enabled (regardless of TripleBuffer), either rendering one or zero frames.