DESCRIPTION On boot up with an external monitor connected, the external monitor freezes just after login. A couple of seconds later the laptop panel also freezes, and there is no response from keyboard. The only way out here is to hold down the power button until the laptop switches off. My current workaround is to switch to AsusMuxDgpu mode. STEPS TO REPRODUCE 1. Power on laptop. 2. Log in OBSERVED RESULT Hard system crash. EXPECTED RESULT Normal system login. SOFTWARE/OS VERSIONS /\ evert@Evert / \ ----------- / \ OS: Arch Linux x86_64 / \ Host: ROG Strix G733PYV_G733PYV (1.0) / ,, \ Kernel: Linux 7.0.12-1-cachyos / | | \ Uptime: 28 mins /_-'' ''-_\ Packages: 7 (flatpak), 2174 (pacman) Shell: bash 5.3.9 Display (BenQ EX3210U): 3840x2160 @ 1.25x in 32", 120 Hz [External] * Display (NE173QHM-NZ2): 2560x1440 @ 1.33x in 17", 240 Hz [Built-in] DE: KDE Plasma 6.7.0 WM: KWin (Wayland) WM Theme: Breeze Theme: Breeze (Light) [Qt], Breeze [GTK2/3/4] Icons: breeze [Qt], breeze [GTK2/3/4] Font: Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4] Cursor: breeze (48px) Terminal: konsole 26.4.2 Terminal Font: Hack (12pt) CPU: AMD Ryzen 9 7945HX3D (32) @ 5.46 GHz GPU 1: AMD Radeon 610M [Integrated] GPU 2: NVIDIA GeForce RTX 4090 Laptop GPU [Discrete] Memory: 7.33 GiB / 62.00 GiB (12%) Swap: 0 B / 50.00 GiB (0%) Disk (/): 112.30 GiB / 200.00 GiB (56%) - btrfs Disk (/home): 2.63 TiB / 3.40 TiB (77%) - btrfs Disk (/home/evert/Videos): 2.80 TiB / 3.39 TiB (83%) - btrfs Local IP (wlp4s0): 192.168.88.132/24 Battery (GA50358): 77% [AC Connected] Locale: en_GB.UTF-8 ADDITIONAL INFORMATION Journal excerpt (boot -3): ``` NVRM: Xid (PCI:0000:01:00): 31, pid=1785, name=kwin_wayland, channel 0x00000004 MMU Fault: ENGINE GRAPHICS GPC3 GPCCLIENT_PROP_0 faulted @ 0x0_06860000 Fault is of type FAULT_PTE ACCESS_TYPE_VIRT_READ ```
I'm experiencing the same issue, and it mainly happens when playing videos in a browser. I've attached my specifications and logs below. Operating System: Arch Linux KDE Plasma Version: 6.7.0 KDE Frameworks Version: 6.27.0 Qt Version: 6.11.1 Kernel Version: 7.0.12-arch1-1 (64-bit) Graphics Platform: Wayland Processors: 32 × 13th Gen Intel® Core™ i9-13900HX Memory: 32 GiB of RAM (31.1 GiB usable) Graphics Processor 1: Intel® Graphics Graphics Processor 2: NVIDIA GeForce RTX 4060 Laptop GPU Manufacturer: Acer Product Name: Predator PHN16-71 System Version: V1.20 ------------------------------------------------------------------------------------------------------------------------------------- systemd[1212]: Started Microsoft Edge - Web Browser. microsoft-edge-stable[3024]: Opening in existing browser session. systemd[1212]: app-com.microsoft.Edge@d5ffef7a66ed41f3b02b4587b94fb3b8.service: Consumed 125ms CPU time over 108ms wall clock time, 68.7M memory peak. microsoft-edge-stable[2141]: Fontconfig error: Cannot load default config file: File not found kernel: NVRM: GPU at PCI:0000:01:00: GPU-9825dede-5834-0b9b-9c4a-03fc8b9bc614 kernel: NVRM: Xid (PCI:0000:01:00): 31, pid=1308, name=kwin_wayland, channel 0x0000000b, intr 00000000. MMU Fault: ENGINE GRAPHICS GPC1 GPCCLIENT_PROP_0 faulted @ 0x0_0f800000. Fault is of type FAULT_PDE ACCESS_TYPE_VIRT_READ
And I’m not sure if it’s relevant, but KWIN_DRM_DISABLE_TRIPLE_BUFFERING is set to 0.
If you put KWIN_DISABLE_VULKAN=1 into /etc/environment and reboot, does that change anything? What Nvidia driver version are you using?
Setting KWIN_DISABLE_VULKAN=1 fixed the system freezes, but caused a major performance drop. My browser is now lagging, with scrolling feeling choppy and FPS falling from 180 to 40–50.
(In reply to Zamundaaa from comment #3) > If you put > KWIN_DISABLE_VULKAN=1 > into /etc/environment and reboot, does that change anything? > > What Nvidia driver version are you using? 610.43.02
Okay. Does it also happen with older drivers? When the freeze happens, can you still access the computer through ssh? Also, please install vulkan validation layers, reboot, trigger the issue and then get the output of > journalctl --user-unit plasma-kwin_wayland --boot 0 (or -1 if you had to reboot in between) (In reply to sunghwan from comment #4) > Setting KWIN_DISABLE_VULKAN=1 fixed the system freezes, but caused a major > performance drop. My browser is now lagging, with scrolling feeling choppy > and FPS falling from 180 to 40–50. That might be fixed by https://invent.kde.org/plasma/kwin/-/merge_requests/9412
I believe I’ve identified the root cause of the issue and a way to continue using the Vulkan backend on NVIDIA GPUs. I’m sharing my analysis and a proof-of-concept patch in the hope that it might be of some assistance. This was actually my first time analyzing the KWin codebase in depth, so I relied on LLM assistance to understand the structure of KWin and draft the initial patch. I would appreciate it if you could point out any mistakes or areas that might need correction. In KWin’s architecture, the copy operation is executed on the destination GPU. The output GPU (NVIDIA, represented by m_copyDevice) imports the source buffer (allocated on Intel) and runs Vulkan commands on its own queue to copy the frame to its presentation swapchain. Because the Vulkan copy commands are executed on the NVIDIA GPU, the NVIDIA driver is the one performing the memory barriers and texture transfers, which is why the driver-level page faults and GPU freezes occurred on the NVIDIA GPU. Here are the details for a more in-depth analysis: • Queue Family Transitions & PTE Write Page Faults: KWin transitions queue family ownership to vk::QueueFamilyExternal to release image control back to the display controller (required on Intel/AMD to handle color decompression/DCC). However, on NVIDIA dGPUs, releasing imported external memory to vk::QueueFamilyExternal causes the driver's page table entries (PTE) to be invalidated or unmapped. When the GPU's Copy Engine tries to write to the destination buffer, it hits virtual write page faults. • Missing Source Image Layout Transitions & PDE Faults: Newly imported DMA-BUF textures start in the undefined layout in Vulkan. Accessing them under the assumption that they are in the general layout without an initial layout transition leads to page directory translation faults. • Graphics Sampler & PTE Read Page Faults: Blitting images relies on the graphics pipeline and texture units. The hardware texture sampler unit has strict address alignment limits for modifier-tiled external memory. When trying to sample or read from the tiled DMA-BUF texture, it hits virtual read page faults. Addressing the three issues above has significantly reduced the system freezes. However, the symptoms eventually recur after an extended period of time; therefore, applying the fix for the Inter-API Fence Deadlocks below is necessary to ensure long-term stability • Inter-API Fence Deadlocks: In hybrid setups, the frame is rendered on OpenGL (compositor) and copied via Vulkan. Syncing OpenGL completion to Vulkan requires exporting an OpenGL native fence file descriptor (sync FD) and importing it as a Vulkan binary semaphore. Under load or after running for a while, these fences fail to resolve in the NVIDIA driver, causing queue deadlocks and Vulkan device lost timeouts. Here is the link to the proof-of-concept patch(https://pastebin.com/0pnLGQrX). Please note that it is not yet fully polished, but applying it has resolved the NVIDIA GPU crashes in Vulkan. I sincerely hope this proves helpful for your analysis.
I've found a simpler fix. The approach focuses on fixing the CPU-GPU race condition triggered during the MultiGpuSwapchain::deleteResources call. MultiGpuSwapchain::deleteResources destroys Vulkan swapchain memory allocations on the CPU without waiting for the GPU to finish, causing the NVIDIA driver to unmap the page tables while the Copy Engine is still actively writing to those addresses, triggering write page faults (Xid 31). This patch (https://pastebin.com/4Yv9F0fj) adds a crucial Vulkan synchronization call (waitIdle()) inside MultiGpuSwapchain::deleteResources() From my tests, I haven't encountered any system freezes or performance issues. I hope this helps in resolving the root cause.
(In reply to Zamundaaa from comment #6) > Okay. Does it also happen with older drivers? > When the freeze happens, can you still access the computer through ssh? > > Also, please install vulkan validation layers, reboot, trigger the issue and > then get the output of > > journalctl --user-unit plasma-kwin_wayland --boot 0 > (or -1 if you had to reboot in between) > > (In reply to sunghwan from comment #4) > > Setting KWIN_DISABLE_VULKAN=1 fixed the system freezes, but caused a major > > performance drop. My browser is now lagging, with scrolling feeling choppy > > and FPS falling from 180 to 40–50. > That might be fixed by > https://invent.kde.org/plasma/kwin/-/merge_requests/9412 These logs were extracted from Arch Linux KWin 6.7.0-3. Jun 20 18:39:45 neo16 systemd[1205]: Starting KDE Wayland Compositor... Jun 20 18:39:45 neo16 systemd[1205]: Started KDE Wayland Compositor. Jun 20 18:39:46 neo16 kwin_wayland[1261]: No backend specified, automatically choosing drm Jun 20 18:39:46 neo16 kwin_wayland[1261]: Libinput: event7 - PIXA3848:00 093A:3848 Touchpad: kernel bug: clickpad advertising right button. See https://wayland.freedesktop.org/libinput/doc/1.31.3/clickpad-wi> Jun 20 18:39:46 neo16 kwin_wayland[1261]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Warning: Multiple symbols for level 1/group 1 on key <FK23> Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Using F23, ignoring XF86TouchpadOff Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Warning: Symbol map for key <FK23> redefined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Using last definition for conflicting fields Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Warning: Symbol map for key <FK24> redefined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: > Using last definition for conflicting fields Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1342]: Errors from xkbcomp are not fatal to the X server Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > X11 cannot support keycodes above 255. Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > Using 0, ignoring 0 Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: > Using 0, ignoring 0 Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1351]: Errors from xkbcomp are not fatal to the X server Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Warning: Multiple symbols for level 1/group 1 on key <FK23> Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Using F23, ignoring XF86TouchpadOff Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Warning: Symbol map for key <FK23> redefined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Using last definition for conflicting fields Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Warning: Symbol map for key <FK24> redefined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: > Using last definition for conflicting fields Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1359]: Errors from xkbcomp are not fatal to the X server Jun 20 18:39:46 neo16 kwin_wayland[1261]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > X11 cannot support keycodes above 255. Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > Using 0, ignoring 0 Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: > Using 0, ignoring 0 Jun 20 18:39:46 neo16 kwin_wayland_wrapper[1380]: Errors from xkbcomp are not fatal to the X server Jun 20 18:39:47 neo16 kwin_wayland[1261]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > X11 cannot support keycodes above 255. Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > Using 0, ignoring 0 Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: > Using 0, ignoring 0 Jun 20 18:39:47 neo16 kwin_wayland_wrapper[1647]: Errors from xkbcomp are not fatal to the X server Jun 20 18:42:12 neo16 kwin_wayland[1261]: Failed to find a working output layer configuration! Enabled layers: Jun 20 18:42:12 neo16 kwin_wayland[1261]: src KWin::RectF(0,0 2560x1600) -> dst KWin::Rect(0,0 2560x1600) Jun 20 18:42:12 neo16 kwin_wayland[1261]: drmModeListLessees() failed: Permission denied Jun 20 18:42:12 neo16 kwin_wayland[1261]: Applying output configuration failed! Jun 20 18:42:12 neo16 kwin_wayland[1261]: atomic commit failed: Permission denied Jun 20 18:42:12 neo16 kwin_wayland[1261]: atomic commit failed: Permission denied Jun 20 18:42:12 neo16 kwin_wayland[1261]: drmModeListLessees() failed: Permission denied
Also, this is a log from a different time, but the messages are slightly different. There are two main symptoms: one where the monitor briefly freezes and then starts working again, and another where the system hangs completely. Jun 20 18:37:46 neo16 systemd[1206]: Starting KDE Wayland Compositor... Jun 20 18:37:46 neo16 systemd[1206]: Started KDE Wayland Compositor. Jun 20 18:37:47 neo16 kwin_wayland[1265]: No backend specified, automatically choosing drm Jun 20 18:37:47 neo16 kwin_wayland[1265]: Libinput: event7 - PIXA3848:00 093A:3848 Touchpad: kernel bug: clickpad advertising right button. See https://wayland.freedesktop.org/libinput/doc/1.31.3/clickpad-wi> Jun 20 18:37:47 neo16 kwin_wayland[1265]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Warning: Multiple symbols for level 1/group 1 on key <FK23> Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Using F23, ignoring XF86TouchpadOff Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Warning: Symbol map for key <FK23> redefined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Using last definition for conflicting fields Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Warning: Symbol map for key <FK24> redefined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: > Using last definition for conflicting fields Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1345]: Errors from xkbcomp are not fatal to the X server Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > X11 cannot support keycodes above 255. Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > Using 0, ignoring 0 Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: > Using 0, ignoring 0 Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1354]: Errors from xkbcomp are not fatal to the X server Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Warning: Multiple symbols for level 1/group 1 on key <FK23> Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Using F23, ignoring XF86TouchpadOff Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Warning: Symbol map for key <FK23> redefined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Using last definition for conflicting fields Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Warning: Symbol map for key <FK24> redefined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: > Using last definition for conflicting fields Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1374]: Errors from xkbcomp are not fatal to the X server Jun 20 18:37:47 neo16 kwin_wayland[1265]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > X11 cannot support keycodes above 255. Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > Using 0, ignoring 0 Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: > Using 0, ignoring 0 Jun 20 18:37:47 neo16 kwin_wayland_wrapper[1383]: Errors from xkbcomp are not fatal to the X server Jun 20 18:37:48 neo16 kwin_wayland[1265]: XKB: Multiple definitions of group 0 name in map 'kr104'; Using 'Korean (101/104-key compatible)', ignoring 'English (US)' Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: The XKEYBOARD keymap compiler (xkbcomp) reports: Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > Warning: Unsupported maximum keycode 709, clipping. Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > X11 cannot support keycodes above 255. Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > Warning: Virtual modifier Hyper multiply defined Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > Using 0, ignoring 0 Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > Warning: Virtual modifier ScrollLock multiply defined Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: > Using 0, ignoring 0 Jun 20 18:37:48 neo16 kwin_wayland_wrapper[1654]: Errors from xkbcomp are not fatal to the X server Jun 20 18:38:28 neo16 kwin_wayland[1265]: Vulkan device lost! Jun 20 18:38:28 neo16 kwin_wayland[1265]: Rendering a layer failed! Jun 20 18:38:28 neo16 kwin_wayland[1265]: Failed to find a working output layer configuration! Enabled layers: Jun 20 18:38:28 neo16 kwin_wayland[1265]: src KWin::RectF(0,0 2560x1440) -> dst KWin::Rect(0,0 2560x1440) Jun 20 18:38:42 neo16 kwin_wayland[1265]: Vulkan device lost! Jun 20 18:38:42 neo16 kwin_wayland[1265]: Rendering a layer failed! Jun 20 18:38:42 neo16 kwin_wayland[1265]: Failed to find a working output layer configuration! Enabled layers: Jun 20 18:38:42 neo16 kwin_wayland[1265]: src KWin::RectF(0,0 2560x1440) -> dst KWin::Rect(0,0 2560x1440) Jun 20 18:39:27 neo16 kwin_wayland[1265]: Failed to find a working output layer configuration! Enabled layers: Jun 20 18:39:27 neo16 kwin_wayland[1265]: src KWin::RectF(0,0 2560x1600) -> dst KWin::Rect(0,0 2560x1600) Jun 20 18:39:27 neo16 kwin_wayland[1265]: Applying output configuration failed!
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/9434
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/9435
*** Bug 521847 has been marked as a duplicate of this bug. ***
Git commit 477ee3b85f808244d834da13291d6e5337b3ff24 by Xaver Hugl. Committed on 20/06/2026 at 14:57. Pushed by zamundaaa into branch 'master'. vulkan/swapchain: import buffers correctly The "importDmabuf" method approach was copied from the EGL code, but it's quite problematic for Vulkan, since it doesn't handle synchronization when buffers get deleted. This lack of synchronization can cause GPU hangs and similar problems. Co-authored-by: SungHwan Jung <nowy08@gmail.com> M +1 -1 src/vulkan/vulkan_device.h M +2 -2 src/vulkan/vulkan_swapchain.cpp https://invent.kde.org/plasma/kwin/-/commit/477ee3b85f808244d834da13291d6e5337b3ff24
Git commit 0287f7fa9d6bb58250471b988265257cd348132d by Xaver Hugl. Committed on 20/06/2026 at 14:58. Pushed by zamundaaa into branch 'Plasma/6.7'. vulkan/swapchain: import buffers correctly The "importDmabuf" method approach was copied from the EGL code, but it's quite problematic for Vulkan, since it doesn't handle synchronization when buffers get deleted. This lack of synchronization can cause GPU hangs and similar problems. Co-authored-by: SungHwan Jung <nowy08@gmail.com> (cherry picked from commit 477ee3b85f808244d834da13291d6e5337b3ff24) Co-authored-by: Xaver Hugl <xaver.hugl@kde.org> M +1 -1 src/vulkan/vulkan_device.h M +2 -2 src/vulkan/vulkan_swapchain.cpp https://invent.kde.org/plasma/kwin/-/commit/0287f7fa9d6bb58250471b988265257cd348132d
*** Bug 521811 has been marked as a duplicate of this bug. ***