Bug 509165

Summary: Graphical glitches on desktop, blinking white dots and lines on screen border
Product: [Plasma] kwin Reporter: Natasha Nox <noxgit+kde>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: minor CC: kde, nate, xaver.hugl
Priority: NOR    
Version First Reported In: 6.4.4   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 6.5.0
Sentry Crash Report:
Attachments: Lower end of the screen with the bugs in question
kscreen-doctor -o

Description Natasha Nox 2025-09-05 16:13:38 UTC
Created attachment 184751 [details]
Lower end of the screen with the bugs in question

SUMMARY
On an AMD HX370-based system there are randomly appearing white lines on the border of the screen. See attachment. Couldn't reproduce on other system, might be related to the AMD Strix Point platform specifically. Can be temporarily removed by changing the fractional scaling factor arbitrarily. Appears to be *under* the cursor.

STEPS TO REPRODUCE
1. Use the computer
2. wait until it happens

OBSERVED RESULT
White blinky dots and lines while using the desktop. Mouse can be moved over them. Fullscreen applications move over it, desktop windows do NOT (still visible).

EXPECTED RESULT
No blinking dots.

SOFTWARE/OS VERSIONS
Linux: OpenSuse Tumbleweed 20250829
KDE Plasma Version: 6.4.4
KDE Frameworks Version: 6.17.0 
Qt Version: 6.9.2

ADDITIONAL INFORMATION
Might be related to https://bugs.kde.org/show_bug.cgi?id=373232. With earlier Kernel & KDE combinations the very issues shown in that issue resurfaced. The white lines within terminals & such now appear very rarely. The lines in the screen border however happen all the time.

Further system info:

Graphics:
  Device-1: Advanced Micro Devices [AMD/ATI] Strix [Radeon 880M / 890M]
    driver: amdgpu v: kernel
  Display: wayland server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.8
    compositor: kwin_wayland driver: gpu: amdgpu resolution: 3200x2000~120Hz
  API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 25.1.7 renderer: AMD
    Radeon Graphics (radeonsi gfx1150 LLVM 20.1.8 DRM 3.64
    6.17.0-rc4-1.ge245414-default)
  API: Vulkan v: 1.4.321 drivers: N/A surfaces: N/A
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor wl: wayland-info
    x11: xdpyinfo, xprop, xrandr
Comment 1 Zamundaaa 2025-09-18 11:13:11 UTC
Please attach the output of
kscreen-doctor -o

The problem is most likely caused by our repaint areas being tracked in integer logical coordinates; with some unfortunate resolution+scale combinations, that can result in a row of pixels being rounded away.
Comment 2 Bug Janitor Service 2025-09-18 12:25:48 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/8127
Comment 3 Zamundaaa 2025-09-18 12:28:25 UTC
In my testing with Plasma 6.4 on my Framework 13, I could reproduce such glitches with the scale factor 1.7, and I saw similar glitches on the OnePlus 6 with scale 2.65 too. The phone I couldn't test with git master, but on the laptop, the glitches are already gone. The MR just adds a test for it.

If you can still reproduce the issue in 6.5, please reopen this though!
Comment 4 Natasha Nox 2025-09-18 12:59:30 UTC
Created attachment 185046 [details]
kscreen-doctor -o
Comment 5 Zamundaaa 2025-09-18 13:10:15 UTC
Hmm, that resolution+scale matches up nicely, so the glitches you see could come from something else as well. Do reopen this if it still happens with 6.5, and I'll take another look.
Comment 6 Zamundaaa 2025-09-18 16:57:57 UTC
Git commit 449c4d53b5327aeaa022be168b4cf43a50294946 by Xaver Hugl.
Committed on 18/09/2025 at 16:03.
Pushed by zamundaaa into branch 'master'.

autotests/integration: add test for fractional scaling glitches

In my own testing (vs. 6.4) the actual bug is already fixed. This test just
makes sure it stays that way

M  +1    -0    autotests/integration/CMakeLists.txt
A  +118  -0    autotests/integration/fractional_repaint_test.cpp     [License: GPL(v2.0+)]
M  +10   -1    src/backends/virtual/virtual_egl_backend.cpp
M  +6    -1    src/backends/virtual/virtual_egl_backend.h

https://invent.kde.org/plasma/kwin/-/commit/449c4d53b5327aeaa022be168b4cf43a50294946
Comment 7 Zamundaaa 2025-09-20 10:47:10 UTC
Git commit bb79e5d71b1e96cb525ee15aa989cf2aa1d4197f by Xaver Hugl.
Committed on 20/09/2025 at 10:29.
Pushed by zamundaaa into branch 'Plasma/6.5'.

autotests/integration: add test for fractional scaling glitches

In my own testing (vs. 6.4) the actual bug is already fixed. This test just
makes sure it stays that way


(cherry picked from commit 449c4d53b5327aeaa022be168b4cf43a50294946)

Co-authored-by: Xaver Hugl <xaver.hugl@kde.org>

M  +1    -0    autotests/integration/CMakeLists.txt
A  +118  -0    autotests/integration/fractional_repaint_test.cpp     [License: GPL(v2.0+)]
M  +10   -1    src/backends/virtual/virtual_egl_backend.cpp
M  +6    -1    src/backends/virtual/virtual_egl_backend.h

https://invent.kde.org/plasma/kwin/-/commit/bb79e5d71b1e96cb525ee15aa989cf2aa1d4197f