Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package kwin6 for openSUSE:Factory checked 
in at 2026-11-05 18:19:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kwin6 (Old)
 and      /work/SRC/openSUSE:Factory/.kwin6.new.3759290 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kwin6"

Thu Nov  5 18:19:57 2026 rev:62 rq:1394927 version:6.8.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/kwin6/kwin6.changes      2026-10-29 
16:04:44.699049896 +0100
+++ /work/SRC/openSUSE:Factory/.kwin6.new.3759290/kwin6.changes 2026-11-05 
18:20:47.719914369 +0100
@@ -1,0 +2,6 @@
+Wed Nov  4 12:05:19 UTC 2026 - Christophe Marin <[email protected]>
+
+- Add upstream change (kde#527984, boo#1289320)
+  * 0001-compositor-handle-possibly-missing-render-device.patch
+
+-------------------------------------------------------------------

New:
----
  0001-compositor-handle-possibly-missing-render-device.patch

----------(New B)----------
  New:- Add upstream change (kde#527984, boo#1289320)
  * 0001-compositor-handle-possibly-missing-render-device.patch
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kwin6.spec ++++++
--- /var/tmp/diff_new_pack.2OwhSQ/_old  2026-11-05 18:20:48.546948674 +0100
+++ /var/tmp/diff_new_pack.2OwhSQ/_new  2026-11-05 18:20:48.549948799 +0100
@@ -39,6 +39,8 @@
 Source1:        
https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz.sig
 Source2:        plasma.keyring
 %endif
+# PATCH-FIX-UPSTREAM
+Patch0:         0001-compositor-handle-possibly-missing-render-device.patch
 BuildRequires:  doxygen
 BuildRequires:  fdupes
 BuildRequires:  kf6-extra-cmake-modules >= %{kf6_version}

++++++ 0001-compositor-handle-possibly-missing-render-device.patch ++++++
>From c9d720793bbcef9483ab290673032d39441c0e6f Mon Sep 17 00:00:00 2001
From: Xaver Hugl <[email protected]>
Date: Thu, 29 Oct 2026 15:54:18 +0100
Subject: [PATCH] compositor: handle possibly missing render device

Commit 6783f9610c moved the cross-GPU direct scanout check from
backends/drm into the compositor, but dropped the null check on the
render device. GpuManager's compatibleRenderDevice() returns nullptr
for scanout devices that have no render device to pair with, such as
evdi DisplayLink outputs. This caused deviceId() to be called on a null
pointer whenever a buffer from another device is considered for direct
scanout on such an output.

On systems with a DisplayLink dock, this crashes kwin_wayland as soon
as a fullscreen surface is shown on an evdi output.

This change restores the previous behavior: If there is no compatible
render device, treat the buffer as coming from another GPU and refuse
direct scanout.

BUG: 527984


(cherry picked from commit 43a74990f34159e68a12e85dc1ff1d9b0d908ee3)

Co-authored-by: Fae Schiewe <[email protected]>
---
 src/compositor.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/compositor.cpp b/src/compositor.cpp
index 658d550818..0aa0e57d6b 100644
--- a/src/compositor.cpp
+++ b/src/compositor.cpp
@@ -478,7 +478,7 @@ static bool prepareDirectScanout(RenderView *view, 
LogicalOutput *logicalOutput,
         return false;
     }
     const auto compatibleDevice = 
GpuManager::self()->compatibleRenderDevice(layer->scanoutDevice());
-    if (attrs->device != layer->scanoutDevice()->deviceId() && attrs->device 
!= compatibleDevice->deviceId()) {
+    if (attrs->device != layer->scanoutDevice()->deviceId() && 
(!compatibleDevice || attrs->device != compatibleDevice->deviceId())) {
         // Disallow direct scanout between GPUs, as
         // - there are some significant driver bugs with direct scanout from 
other GPUs,
         //   like https://gitlab.freedesktop.org/drm/amd/-/issues/2075
-- 
2.56.0

Reply via email to