https://bugs.kde.org/show_bug.cgi?id=527526

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #6 from [email protected] ---
After upgrading from Plasma/KWin 6.8.0 to 6.8.1, the external monitor driven by
the NVIDIA GPU shows persistent flickering of UI elements (application
launcher, panel, window frames/contents) when the mouse moves. The internal
panel, driven by the AMD iGPU, is unaffected. The issue did not occur in 6.8.0.

Hardware / Software
OS: CachyOS Linux (Arch-based), kernel 7.2.11-1-cachyos
KDE Plasma: 6.8.1
KDE Frameworks: 6.31.0
Qt: 6.12.0
KWin: 6.8.1
Mesa: 26.2.4
NVIDIA driver: 615.78.08 (proprietary)
GPU 0 (display output): NVIDIA GeForce GTX 1650 Ti Mobile (TU117M),
/dev/dri/card1
drives external HDMI-A-1 (2560x1440 @ 60, scale 1.5)
GPU 1 (compositing): AMD Radeon Renoir (Radeon Vega), /dev/dri/card2
drives internal eDP-1 panel (disabled in this configuration)
Compositor: KWin Wayland, OpenGL ES, renderer "AMD Radeon Graphics (radeonsi,
renoir)"

Steps to reproduce
Boot into a Plasma 6.8.1 Wayland session on the above hybrid setup.
Use the external monitor as the active display.
Open the application launcher, move the mouse over the panel, or move the mouse
over/inside application windows.
Observe flickering of the affected UI elements. Static content is stable;
flicker is triggered by mouse movement/input.

Observed result
Launcher, panel, and window frames/contents flicker on mouse movement.
Cursor flickers only if KWIN_USE_BUFFER_AGE=0 is set (not in the default case).
Whole screen is not black; only the affected elements on the NVIDIA-driven
output.

Expected result
No flickering on either output during normal mouse movement.

Workaround that fixes the issue
Create ~/.config/plasma-workspace/env/kwin-flicker-workaround.sh (executable):

#!/bin/sh
export
KWIN_DRM_DEVICES="/dev/dri/by-path/pci-0000\:05\:00.0-card:/dev/dri/by-path/pci-0000\:01\:00.0-card"
export KWIN_DRM_FORCE_GL_FINISH_MGPU_COPY=1
export KWIN_DRM_FORCE_GL_FINISH_PRESENT=1
Relogin. Both monitors remain active and flicker is gone.

Notes:
KWIN_USE_BUFFER_AGE=0 alone did not help and introduced cursor flicker.
KWIN_USE_OVERLAYS=0 alone did not help.
KWIN_FORCE_SW_CURSOR=1 fixed cursor flicker but was not needed once buffer age
was left at its default.
KWIN_DRM_NO_AMS was not tested.

Related bugs
527526 (same 6.8.1 multi-GPU regression, Intel/NVIDIA)
527251 (6.8.0 cross-GPU flicker, Intel/NVIDIA)
521668 (multi-GPU copy path, KWIN_DRM_FORCE_GL_FINISH_MGPU_COPY=1 fixes
flicker)
527328 / 527421 (different trigger: non-atomic/legacy post-blend, fixed in
6.8.2)
Additional context

The fix in 6.8.2 for bug 527421 (disabling post-blend offloading on non-atomic
drivers) does not apply here, since both GPUs report atomic mode setting
support. The issue appears to be in the multi-GPU copy path introduced/changed
in 6.8.1, resolved by forcing a glFinish before the cross-GPU copy/present. EOF
echo "written"

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to