-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Scanline flickering with amdgpu and Global C-State Control enabled #318
Comments
I had the same on -CURRENT and x11-wm/sway. Try |
Brilliant!!! Sysctl is enough and I can toggle between I will need to do further testing to see if my system would prefer The problem is then still that we cannot get to the lower C3 or CC6 states but are doing things the oldfashioned way. NOTE: I have not tried setting it to Initially I thought this was clearly iGPU related. But now this looks like a (at least) Ryzen 5 issue. Maybe only for the G and X variants with iGPU? Even numbered logical CPUs seems to perform better than odd numbered. That might be a culprit for people who experience "stuttering", "jitter" or latency. That might very well be a general problem on my rig but I only noticed it because amdgpu driver so clearly suffers visually because of this. If this is a weakness in the current ścheduler it might be interesting in regard to more modern CPUs with dedicated low power cores. Andriy Gapon wrote relatively recent in Dec 2021:
I have no idea how to conclude if this is a ZEN generational issue. But I have seen a report with discrete AMD graphics which indicates a more general issue. Then there is the exsistence of zenstates.py. Maybe that is needed for a stable system but my expectation is that things should work out of the box. I see 6 possible solutions from best to worst
I think option 3 is the lowest effort compared to impact. There are several reports if you dig deep enough. The worst part is that many might be affected without knowing. Am I missing something obvious? Or is this actively worked on elsewhere? |
Just curious, is this also the case with FreeBSD 14.1 and DRM kmod 6.1? |
As stated: The system is currently updated to FreeBSD 14.1 and drm 6.1.92 The workaround is tested and works with 14.1 and 6.1. I suspect it would be the same if I downgraded to 5.15 but I have not tried this yet. This is seems to be some sort of ACPI issue. Still investigating so I am unsure if I should blame yet another buggy BIOS or if FreeBSD can be blamed for lacking CPPC support. |
I have what I would call intermittent scanline flickering with AMD integrated graphics on the AMD Ryzen 5 5600G and a Asrock DeskMini X300 system. . System works nicely with OtherOS(tm) and to my surprise it seems to be related with C-State. A workaround is to disable Global C-State Control in the BIOS.
It becomes visible when the VT console switches framebuffer driver from efifb to the fb driver during boot. It starts right after the screen clears and I see
start FB_INFO:
.If I remove
amdgpu
fromkld_list
there is no issue. I have tried 3 diffrent HDMI cables just to be sure it should not be a cable issue.It is intermittent and the frequency it occurs is rather random. Ie. playing video or shaking a window does not make it worse.
The only way I can reliably provoke it is in a VT console when selecting with the mouse pointer on the 2nd half on the screen. The rest of the time it simply occurs randomly. During boot I see it consistently at the line "ELF ldconfig path:".
This is how it looks in the console:
https://youtu.be/swA0gvcHGZ8
The issue carries over to X as well:
https://youtu.be/76LkOBlXXTw
I have tried manual configuration and setting TearFree and dropped the frequency from 60 to 30 Hz but to no avail.
Initial system info:
The system is currently updated to FreeBSD 14.1 and drm 6.1.92
The system is an Asrock X300 SFF. The workaround is to disable "Global C-State Control" in the BIOS.
The system was running with
powerd
enabled and-a adaptive
. But naively disabling this makes no difference.The above is a summary of a forum thread
Unsure if this a hardware quirk or related to how FreeBSD is handling C States. Another user reported similar issues with the same GPU which was fixed lowering memory speed. That made no difference for me. I have not seen a lot of reports like this which makes me doubt my hardware. But found it worth reporting as I can reliably replicate the issue when switching C-State control.
The text was updated successfully, but these errors were encountered: