Bug 505451

Summary: Tearing not occurring on certain/newer Kernel versions
Product: [Plasma] kwin Reporter: thederpyworld
Component: compositingAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: normal CC: xaver.hugl
Priority: NOR    
Version First Reported In: 6.3.5   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description thederpyworld 2025-06-10 20:54:56 UTC
SUMMARY
Having tearing enabled for all monitors, and forcing tearing on a fullscreen application (eg. using window rules) does not result in tearing in certain Linux kernel versions. In this case, I've tested it with osu!lazer.
To go in a bit deeper - I've also tested the "Show Paint" effect, and see how that differs.

STEPS TO REPRODUCE
1. Have a certain version of Linux kernel
2. Enable tearing on the display, and force it using Window Rules if necessary
3. Observe that tearing appears only in older versions

OBSERVED RESULT
| >>6.14.7.zen2-1
| Tearing WORKS, "Show Paint" shows stripes of differing colors
kwin_wayland[1831]: kwin_wayland_drm: Atomic test failed! Invalid argument
kwin_wayland[1831]: kwin_core: Changed presentation mode to KWin::PresentationMode::VSync
kwin_wayland[1831]: kwin_core: Changed presentation mode to KWin::PresentationMode::Async

| >>6.14.10.zen1-1
| Tearing WORKS, however enabling "Show Paint" makes it Vsync/Tear-free
kwin_wayland[2007]: kwin_wayland_drm: Atomic test failed! Invalid argument
kwin_wayland[2007]: kwin_core: Changed presentation mode to KWin::PresentationMode::VSync
kwin_wayland[2007]: kwin_core: Changed presentation mode to KWin::PresentationMode::Async

| >>6.15.1.zen1-2
| Tearing DOES NOT WORK at all, Show Paint shows no-tearing
kwin_wayland[1823]: kwin_wayland_drm: Atomic test failed! Invalid argument
kwin_wayland[1823]: kwin_wayland_drm: Atomic test failed! Invalid argument
kwin_wayland[1823]: kwin_wayland_drm: Atomic test failed! Invalid argument
     *these lines are constantly being repeated as osu! is running*

EXPECTED RESULT
In all three Kernel versions, tearing should be present as it is requested -- additionally Show Paint should also observe tearing? Although not sure if that was just a happy accident.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.3.5
KDE Frameworks Version: 6.14.0
Qt Version: 6.9.1
Kernel Version: 6.14.7-zen2-1-zen (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 6800HS with Radeon Graphics
Memory: 14.9 GiB of RAM
Graphics Processor 1: AMD Radeon 680M

ADDITIONAL INFORMATION
Comment 1 thederpyworld 2025-06-10 21:04:28 UTC
My bad, forgot to mention that I currently am on KWin built on 5c7d2de59d6afda320feab9c08a2dd3c4cbc728a to solve certain monitor-disconnect issues.
Comment 2 Zamundaaa 2025-06-11 19:40:49 UTC
Kernel regressions should be reported to the kernel. In this specific case, to https://gitlab.freedesktop.org/drm/amd/-/issues