6.11.2 -> 6.11.3 FW16 TearFree "auto" or "off" internal screen only updates on mouse movement (bisected 70cc361f98a7)
After upgrading my Framework 16 from 6.11.2 to 6.11.3, within XOrg, if TearFree is "off" or "auto," the internal display updates only when the mouse cursor is moved.
For example, on the sign-in screen, only a white box is displayed for the username/password entry. If I move the mouse, the labels are displayed -- but if I enter my username and password, the screen is not updated during that process unless I move the mouse.
Similarly, after my desktop manager is loaded, changes to the screen are not displayed unless/until I move the mouse.
If I enable TearFree with xrandr --output eDP-1 --set TearFree on
the screen updates as it should. If I set the property back to off, the issue of the screen not updating unless I move the mouse returns.
This issue does not reproduce on the external monitor I have connected to the FW16 via the USB-C port on the dGPU.
Hardware description:
- CPU: AMD Ryzen 7 7840HS w/ Radeon 780M Graphics
- GPU: 03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 33 [Radeon RX 7700S/7600/7600S/7600M XT/PRO W7600] [1002:7480] (rev c1) c5:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev c2)
- System Memory: 32GB
- Display(s): Framework 16 internal display, 2560x1600
- Type of Display Connection: eDP/internal
System information:
- Distro name and Version: Gentoo
- Kernel version: Linux levity 6.11.3-gentoo-x86_64 #2 SMP PREEMPT_DYNAMIC Fri Oct 11 11:09:47 PDT 2024 x86_64 AMD Ryzen 7 7840HS w/ Radeon 780M Graphics AuthenticAMD GNU/Linux
- Custom kernel: Gentoo
- AMD official driver version: N/A
How to reproduce the issue:
In Kernel 6.11.3, boot to an XOrg server where TearFree is either "auto" or "off" -- without a configuration file, this should be the default.
This can be best-illustrated by putting a window that should have a flashing cursor -- like the Steam chat dialog, with the chat area selected -- onto the Framework 16's internal display. When not moving the mouse, the cursor will remain static, but while continuously moving the mouse, the cursor will flash as would normally be expected.