Rapid flickering in any programs randomly

Hello, I experience dizzyingly rapid flickering randomly during games or productivity apps.

It seems monitor and app dependent, one app can be flickering, alt tabbing to another one (for example from game to ff on the same monitor) stops the flickering but shift alt tabbing back the app is still flickering. When I drag app to different monitor it stops or sometimes starts again.

this has been happening for months now. I think I’ve had this issue since moving to wayland on kde plasma 6. I have an AMD GPU (5700XT) with both AMD-PRO and regular ones, so I can’t imagine it’s gpu drivers. I read somewhere that it might be VRR, but I’m not sure how to test that, turning off v-sync in games doesn’t help.

I think it also might be happening more likely when I stress my GPU (Coding in konsole/nvim is usually fine, but games start this issue, FF and discord sometimes). Pressing meta key to bring up menu bar sometimes stops the game from flickering but clicking back breaks it again, sometimes makes it worse.

Here are some example videos I recorded in slowmo:

  • There’s a slowmo without flicker (I can’t see it)
  • Slowmo with very bad flicker,
  • Slowmo where I see flicker, press meta and open menu, where I stop perceiving flicker(tho there seems to still be some)

On the very bad one, I see that it introduces ghosting, as if it’s switching between one random frame in the past and next one, as if video buffers get corrupted during switching.

On apps like firefox and discord it’s hard to tell if it’s ghosting, but it’s definitely flickering. Sometimes flickers like 3 times and stops, sometimes periodic, very random.

What could I do to fix this?

Kernel: 6.9.6-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.1.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=b8196f39-e08b-4bce-b75d-343098561547 rw rootflags=subvol=@
quiet quiet rd.udev.log_priority=3 vt.global_cursor_default=0
resume=UUID=9bac1011-b1fa-4c26-85c0-a8dacd8e1df1 loglevel=3 ibt=off
Desktop: KDE Plasma v: 6.1.0 tk: Qt v: N/A info: frameworks v: 6.3.0
wm: kwin_wayland with: krunner vt: 1 dm: SDDM Distro: Garuda
base: Arch Linux
Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
Mobo: ASUSTeK model: PRIME B650-PLUS v: Rev 1.xx
serial: <superuser required> part-nu: SKU uuid: <superuser required>
UEFI: American Megatrends v: 1636 date: 07/28/2023
Device-1: hid-0003:256F:C652.0004-battery model: 3Dconnexion Universal
Receiver serial: N/A charge: N/A status: N/A
Device-2: hid-98:b6:ea:16:d7:89-battery model: GuliKit Controller XW
serial: N/A charge: N/A status: N/A
Info: model: AMD Ryzen 7 7700X bits: 64 type: MT MCP arch: Zen 4 gen: 5
level: v4 note: check built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25)
model-id: 0x61 (97) stepping: 2 microcode: 0xA601203
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 8 MiB desc: 8x1024 KiB
L3: 32 MiB desc: 1x32 MiB
Speed (MHz): avg: 4999 high: 5254 min/max: 400/5573 scaling:
driver: amd-pstate-epp governor: powersave cores: 1: 4673 2: 5216 3: 4985
4: 4887 5: 4974 6: 5253 7: 5125 8: 4767 9: 5153 10: 5210 11: 5241 12: 3986
13: 5196 14: 5254 15: 4923 16: 5154 bogomips: 144004
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Device-1: AMD Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]
driver: amdgpu v: kernel arch: RDNA-1 code: Navi-1x process: TSMC n7 (7nm)
built: 2019-20 pcie: gen: 4 speed: 16 GT/s lanes: 16 ports:
active: DP-1,DP-3 empty: DP-2,HDMI-A-1 bus-ID: 03:00.0 chip-ID: 1002:731f
class-ID: 0300
Device-2: AMD Raphael vendor: ASUSTeK driver: amdgpu v: kernel
arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22 pcie:
gen: 4 speed: 16 GT/s lanes: 16 ports: active: none
empty: DP-4,HDMI-A-2,Writeback-1 bus-ID: 0e:00.0 chip-ID: 1002:164e
class-ID: 0300 temp: 59.0 C
Display: wayland server: X.org v: with: Xwayland v: 24.1.0
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu,amdgpu d-rect: 5632x3168 display-ID: 0
Monitor-1: DP-1 pos: primary,top-left res: 3072x1728 size: N/A modes: N/A
Monitor-2: DP-3 pos: bottom-r res: 2560x1440 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: radeonsi device: 2 drv: swrast gbm: drv: radeonsi
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.1.2-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 5700 XT (radeonsi
navi10 LLVM 17.0.6 DRM 3.57 6.9.6-zen1-1-zen) device-ID: 1002:731f
memory: 7.81 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.3.279 layers: 11 device: 0 type: discrete-gpu name: AMD
Radeon RX 5700 XT (RADV NAVI10) driver: mesa radv v: 24.1.2-arch1.1
device-ID: 1002:731f surfaces: xcb,xlib,wayland device: 1
type: discrete-gpu name: AMD Radeon RX 5700 XT driver: amd v: (AMD
proprietary shader compiler) device-ID: 1002:731f
surfaces: xcb,xlib,wayland device: 2 type: integrated-gpu name: AMD
Radeon Graphics (RADV RAPHAEL_MENDOCINO) driver: mesa radv
v: 24.1.2-arch1.1 device-ID: 1002:164e surfaces: xcb,xlib,wayland
device: 3 type: integrated-gpu name: AMD Radeon Graphics driver: amd
v: (AMD proprietary shader compiler) device-ID: 1002:164e
surfaces: xcb,xlib,wayland device: 4 type: cpu name: llvmpipe (LLVM
17.0.6 256 bits) driver: mesa llvmpipe v: 24.1.2-arch1.1 (LLVM 17.0.6)
device-ID: 10005:0000 surfaces: xcb,xlib,wayland
Device-1: AMD Navi 10 HDMI Audio driver: snd_hda_intel v: kernel pcie:
gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab38
class-ID: 0403
Device-2: AMD Rembrandt Radeon High Definition Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0e:00.1 chip-ID: 1002:1640 class-ID: 0403
Device-3: AMD Family 17h/19h HD Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0e:00.6 chip-ID: 1022:15e3 class-ID: 0403
Device-4: USB MIDI Interface driver: snd-usb-audio type: USB rev: 1.1
speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-5:2 chip-ID: fc02:0101
class-ID: 0103
Device-5: Native Instruments Komplete Audio 2 driver: snd-usb-audio
type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 5-1:3
chip-ID: 17cc:1840 class-ID: fe01 serial: <filter>
API: ALSA v: k6.9.6-zen1-1-zen status: kernel-api tools: N/A
Server-1: sndiod v: N/A status: off tools: aucat,midicat,sndioctl
Server-2: PipeWire v: 1.0.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Device-1: Realtek RTL8125 2.5GbE vendor: ASUSTeK driver: r8169 v: kernel
pcie: gen: 2 speed: 5 GT/s lanes: 1 port: e000 bus-ID: 0a:00.0
chip-ID: 10ec:8125 class-ID: 0200
IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
Info: services: NetworkManager, smbd, sshd, systemd-timesyncd
Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) driver: btusb
v: 0.8 type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-6:3
chip-ID: 0a12:0001 class-ID: e001
Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 4.0
lmp-v: 6 status: discoverable: no pairing: no class-ID: 6c0104
Local Storage: total: 1.82 TiB used: 1.2 TiB (66.1%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Crucial model: CT2000P5PSSD8
size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: P7CR403 temp: 59.9 C
scheme: GPT
ID-1: / raw-size: 1.3 TiB size: 1.3 TiB (100.00%) used: 1.2 TiB (92.3%)
fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 520 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 1.3 TiB size: 1.3 TiB (100.00%)
used: 1.2 TiB (92.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 1.3 TiB size: 1.3 TiB (100.00%)
used: 1.2 TiB (92.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 1.3 TiB size: 1.3 TiB (100.00%)
used: 1.2 TiB (92.3%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 30.5 GiB used: 643.2 MiB (2.1%)
priority: 100 comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 16
dev: /dev/zram0
ID-2: swap-2 type: partition size: 33.55 GiB used: 0 KiB (0.0%)
priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3
System Temperatures: cpu: 74.6 C mobo: N/A
Fan Speeds (rpm): N/A
GPU: device: amdgpu temp: 101.0 C mem: 92.0 C fan: 1901 watts: 175.00
device: amdgpu temp: 60.0 C
Memory: total: 32 GiB note: est. available: 30.5 GiB used: 12.43 GiB (40.7%)
Processes: 416 Power: uptime: 5h 3m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 12.18 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 256 default: graphical
tool: systemctl
Packages: 2140 pm: dpkg pkgs: 0 pm: pacman pkgs: 2128 libs: 526
tools: octopi,paru,yay pm: pkg pkgs: 0 pm: flatpak pkgs: 12 Compilers:
clang: 17.0.6 gcc: 14.1.1 Shell: garuda-inxi default: Bash v: 5.2.26
running-in: konsole inxi: 3.3.35
Garuda (2.6.26-1):
System install date:     2023-08-17
Last full system update: 2024-06-28 ↻
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       No/Undetected
Failed units:            sesinetd.service

Try X11 from login page, bottom left.



  • X11s screen tearing or compositor input lag aren’t far from flickering, rather have no screen tearing. Also, I use HDR
  • This has been an issue for months, restarting now won’t change much.
  • Houdini FX service, no clue what’s wrong with it, doesn’ŧ work anyways.

You might want to upgrade your bios to see if that helps

1 Like

Maybe under System Settings > Display and Monitor?

Try to see if you have the same issues when only one monitor is connected.

Have you tried disabling HDR?

Maybe because the license server isn’t running?

The temperatures are borderline, heavy load or a reading error?

Be careful with this:

Oh my god how badly have I been taking care of my pc… I haven’t noticed the nvme being full nor GPU temps!

Thanks for pointing those out.

I just recently upgraded my 1440p + 1080p dual monitor setup to 4k 144hz HDR + 1440p, and never considered taking a look at how the GPU is doing. The default fan curve never went above 80% fan speed, so I set it more aggressively and now it doesn’t go above 80DegC, 100 DegC Mem.

Junkcture stays at 100DegC on max load, but that should be fine I think?

This flickering issue has been happening for months, and I got the new monitor this week. Maybe it was the high temps though, but that will take a bit of time to test.

I plan on doing maintenance, probably a clean ISO install, so I’ll see if disk space and GPU temps were to blame.

@TilliDie There’s been 2 bios updates since I last updated, thanks for the reminder, will do that.

I have checked and counted 8 BIOS/UEFI updates since your version :slight_smile:

The temps are much better now, if those are full usage (for example in a game), it is OKish. If these are in idle, then the temps are bad.

1 Like

It looks to me like it’s a VRR problem with the monitor (I have the same issue on mine) when the frame rate goes below a certain threshold the monitor starts flikering, (the brigtness goes up slightly at lower fps) you can disable VRR in the system settings:

  • open the “System Settings” app
  • serch for “Display Configuration”
  • look for “Adaptive sync” and set it to “Never”

You might want so set it off on every monitor that has adaptive sync capabilities, this way you lose VRR but I think it’s way better than having the screen flickering all the time.

I did some more digging on the issue and found a way that works in my case, you might want to check it out.

Try to disable VRR in KDE Display Configuration. If its disabled and flickering is gone you know the reason. VRR currently in KDE should be always set to automatic and not always. This will turn on VRR only for full screen applications/games.

If you want to have VRR disabled per program or game while retaining the Adaptive sync automatic, you can create Widow rule.

Example >


Check my latest reply >

There are links, AMD may have specific problems with ATOMIC modsettings.

i had flickering on ssd reading so enabled adaptive sync its ended but all started after last update.