My monitor is LG 24MP59G-P (75Hz, FreeSync) and my GPU is Sapphire Nitro+ RX 480 8GB.
Basically, whenever there is movement on my screen (oddly though, cursor movement doesn't cause it), it would flicker very badly.
Here is a video of what I am talking about: https://streamable.com/5eu7p
Apart from trying different refresh rates, as seen in the video, I have also tried switching kernel versions, switching from DisplayPort to HDMI, changing compositor settings and turning off FreeSync from the monitor OSD, but nothing seems to resolve the bug.
What works for me as a workaround is changing /sys/class/drm/card0/device/power_dpm_force_performance_level from auto to either low or high. When I do watch -n 1 "/sys/class/drm/card0/device/pp_dpm_mclk" with the performance level on auto, it normally stays on the lowest (300MHz) and when I move a window around, it constantly switches from 300MHz to 2000MHz (the max on my GPU). Apparently, that's what's causing it to behave this way.
I should emphasize, that I observed the bug in Antergos, Debian 9 Buster (Stretch is good), Manjaro XFCE, Manjaro KDE, Ubuntu 18.10, KUbuntu 18.04 and KUbuntu 18.10. At first I thought it was only related to Arch Linux derivatives, since they all use bleeding-edge packages, but then I noticed, that after switching Debian 9 Stretch's (stable) sources to Buster (testing) and after updating KUbuntu 18.10, the bug appeared in both distros as well.
Here is a link to a thread I created in the Manjaro forums, where I asked for help: https://forum.manjaro.org/t/manjaro-kde-screen-flickering-cant-seem-to-find-a-solution/78349 - You can find all kinds of different things I tried there, as well as more in-depth system information.
With win10 you use latest GPU drivers. It is the same thing with rolling release Linux operating systems, your GPU drivers need to be up to date. Use the latest AMD wip kernel, latest GPU firmware files, Mesa development git and LLVM development git. The Xfce desktop with lightdm is stable when many others are not. Debian buster/sid is a stable ubuntu compatible rolling release OS.
xfce@ryzenpc:~$ inxi -bM
Host: ryzenpc Kernel: 5.0.0-rc7+ x86_64 bits: 64 Desktop: Xfce 4.13.2
Distro: Debian GNU/Linux buster/sid
Type: Desktop Mobo: ASUSTeK model: PRIME B350M-K v: Rev X.0x
serial: <root required> UEFI [Legacy]: American Megatrends v: 4207
6-Core: AMD Ryzen 5 1600 type: MT MCP speed: 2957 MHz
Device-1: AMD Ellesmere [Radeon RX 470/480] driver: amdgpu v: kernel
Display: x11 server: X.Org 1.20.4 driver: amdgpu
renderer: Radeon RX 570 Series (POLARIS10 DRM 3.31.0 5.0.0-rc7+ LLVM 9.0.0)
v: 4.5 Mesa 19.1.0-devel - padoka PPA
don't pay attention to what guy above said, he's a known troll.
this is present in any kernel, including stable, mainline and drm-wip.
this is a duplicate of https://bugs.freedesktop.org/show_bug.cgi?id=102646 although that title doesn't represent the problem well enough.
You both have cheap low quality Sapphire cards with 2 year warranty here when Asus has 3 years. Custom bios in those cards are famous to cause problems with Linux.
(In reply to fin4478 from comment #3)
> You both have cheap low quality Sapphire cards with 2 year warranty here
> when Asus has 3 years. Custom bios in those cards are famous to cause
> problems with Linux.
Please don't post outside your own bug reports if you're not contributing with anything useful. This is not Phoronix or a discussion forum.
> Please don't post outside your own bug reports if you're not contributing with anything useful. This is not Phoronix or a discussion forum.
Sigh. This person constantly spams every bug report with useless opinions on which drivers, distros, games, hardware vendors, etc, are 'good' and 'bad'. Most of the time they are wrong or misleading, in addition to being extremely unhelpful. They were warned a couple of months ago to stop doing this or they would have their posting access removed.
Since they are still posting useless garbage, I have removed their ability to post to Bugzilla now. Sorry about that.
I'm having this issue as well, almost the same setup. I'm using an MSI RX 480 with an LG-29UMP68P (48-75Hz FreeSync Range).
problem because of this commit https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.18.y&id=d9ef158adf04b81772a7e9d682a054614ebac2fd
discussion on Ubuntu was here https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-amdgpu/+bug/1813701
Also affects RX580. I think that the bug applies to 400, 500 series of graphics cards
Can confirm. My GPU is MSI RX580 Armor 8G OC and my monitor Asus VP247QG (FreeSync, 48Hz to 75Hz).
I'm on Solus 4 using the open source drivers (POLARIS10 DRM 3.27.0 5.0.5-113.current LLVM 7.0.0, OpenGL version 4.5, Mesa 19.0.0) and the flickering is exactly like Maxim showed.
The workaround is setting DPM to high:
"echo 'high' > /sys/class/drm/card0/device/power_dpm_force_performance_level"
Can Confirm with my RX 580 and Asus VG245H
Only kernel 4.19 works for me with 75hz , so probably seem to be a problem related to Free Sync.
(In reply to Bennet from comment #11)
> Only kernel 4.19 works for me with 75hz , so probably seem to be a problem
> related to Free Sync.
I don't think it's Freesync-specific; I have Freesync turned off but suffer the same issue at 75 Hz; working fine at 60 Hz, though (RX 580).
I can confirm this issue exists on rx560
i have discovered a workaround,
if you copy the stock powerplaytable to a file with
cat /sys/class/drm/card0/device/pp_table > pptable
then load the stock pptable with
sudo bash -c 'echo pptable > /sys/class/drm/card0/device/pp_table'
the flickering goes away without having to lock the mclk to the highest state
it may also be related to https://bugs.freedesktop.org/show_bug.cgi?id=110347
by default at boot the voltage for the highest pstate is the maximum allowable voltage(1150mv) not the powerplay defined voltage of 1025mv, all other pstates are not effected
this is also corrected after reloading the pptable manually.
I'm also affected by this bug. I have an MSI Rx 570 and my monitor is an Acer SA230. I'm using the display through HDMI since it doesn't have DP.
In Linux Manjaro with kernel 4.19 the problem persists no matter what I try, Freesync enabled or disabled through the monitor, but now I'm typing on a Live USB of OpenMandriva Linux and after login, I went to KDE display settings and changed my framerate from 75 to 60 and back to 75 again, and the problem went away. The kernel is 5.1.9-desktop-1omv4000.
Tested today with Linux Manjaro 18.1 and kernel 5.2.11-1-MANJARO. The problem persists, but I can fix it by changing the refresh rate from 75 to 60 and back to 75 too after every boot.