AMD has made some late changes for Linux 6.2 around the Scatter/Gather (S/G) functionality for APUs that enables display scan-out from system memory.
AMD recently disabled Scatter/Gather for select APUs based on the Display Core Next (DCN) IP block version after users reported flickering with the functionality enabled. AMD disabled Scatter/Gather for DCN 2.1.0, DCN 3.1.2, DCN 3.1.3, and DCN 3.1.5 based APUs. But that turned out to open a separate can of worms: running without Scatter/Gather for the APUs can lead to frame-buffer errors and blank displays when under memory pressure or the display support outright breaking for mobile systems with a limited amount of RAM carved out for video use (like Google Chromebooks).
AMD hasn’t been able to reproduce the Scatter/Gather problems reported by some users around display flickering while they also need to balance the serious side effects of a bad experience when under system memory pressure. So as a late change for Linux 6.2, they are re-enabling Scatter/Gather for the DCN hardware that previously disabled it. Meanwhile they also introduce a new AMDGPU kernel module option to disable the S/G support should you be running into issues on your hardware.
By default the AMDGPU driver will attempt to use S/G display support for capable APUs but if the amdgpu.sg_display=0 option is set it will disable the feature.
Nope, that’s not right… Per several bug reports in recent weeks for APUs / integrated graphics traced back to the S/G behavior.
Among those originally reporting problems with the default Scatter/Gather behavior were flickering or constant solid white screens on a Ryzen 9 7950X desktop with integrated graphics and sporadic flickering with a Ryzen 7 PRO 6850U within a ThinkPad T14 Gen 3. Within those bug reports are also further comments like affecting an older Dell G5 5505 with Ryzen 7 4800H.
So Scatter/Gather is back to being enabled while if you encounter any flickering or display issues, try the new amdgpu.sg_display=0 option to disable Scatter/Gather. These latest minute changes for Linux 6.2 were sent out today for queuing ahead of Linux 6.2-rc8 this weekend. These changes will likely be back-ported to the stable kernel series as well considering it affects users on existing stable kernel versions.