Skip to content

webkit_rendering: disable dmabuf renderer for AMD GPUs - #3695

Open
Christian-Sidak wants to merge 1 commit into
block:mainfrom
Christian-Sidak:fix/issue-3656
Open

webkit_rendering: disable dmabuf renderer for AMD GPUs#3695
Christian-Sidak wants to merge 1 commit into
block:mainfrom
Christian-Sidak:fix/issue-3656

Conversation

@Christian-Sidak

Copy link
Copy Markdown

Summary

AMD Radeon devices (PCI vendor 0x1002) trigger the same WebKitGTK dmabuf blank-screen crash as NVIDIA on some compositor/kernel combinations. This was reported in #3656 by a user on CachyOS + Hyprland with a Radeon Vega Mobile GPU.

  • Generalise the existing nvidia_gpu(drm_root) helper into gpu_vendor(drm_root, vendor_id) so vendor detection is reusable without duplication
  • Add AMD_PCI_VENDOR = "0x1002" constant
  • Add an AMD GPU signal alongside the existing NVIDIA and AppImage signals
  • Update the "no match" log message to mention both vendor families
  • Add two new test cases: AMD-only machine triggers the workaround, AMD+Intel hybrid also triggers it

The --safe-rendering escape hatch and all user-environment-override logic are unchanged.

Test plan

  • cargo fmt --manifest-path desktop/src-tauri/Cargo.toml -- --check passes
  • cargo clippy --manifest-path desktop/src-tauri/Cargo.toml --lib passes with no warnings
  • cargo check --manifest-path desktop/src-tauri/Cargo.toml --lib compiles cleanly
  • just desktop-tauri-test passes (requires Linux build environment with opus; macOS CI will cover this)

Fixes #3656

AMD Radeon devices (PCI vendor 0x1002) trigger the same WebKitGTK
dmabuf blank-screen as NVIDIA on some compositor/kernel combinations.
Widen the heuristic to cover AMD GPUs by generalising nvidia_gpu() into
gpu_vendor(drm_root, vendor_id) and adding AMD_PCI_VENDOR to the
signals array.

Fixes block#3656

Signed-off-by: Christian-Sidak <61099993+Christian-Sidak@users.noreply.github.com>
@Christian-Sidak
Christian-Sidak requested a review from a team as a code owner July 30, 2026 05:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

blank screen when oppend

1 participant