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

            Bug ID: 518347
           Summary: Ghostwriter segfaults immediately on startup on a
                    hybrid Intel+NVIDIA laptop when running on the default
                    Intel GPU (Mesa/iris, Haswell). The crash happens
                    inside QtWebEngine's Chromium GPU compositing
                    pipeline. The application is unusable without manually
    Classification: Applications
           Product: ghostwriter
      Version First 25.12.3
       Reported In:
          Platform: EndeavourOS
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 191153
  --> https://bugs.kde.org/attachment.cgi?id=191153&action=edit
backtrace-full-gbm-coredumpctl

STEPS TO REPRODUCE

  ghostwriter

On a hybrid Intel+NVIDIA laptop with Mesa drivers, Wayland session.

EXPECTED BEHAVIOR
Ghostwriter launches successfully and the Markdown preview renders. If hardware
GPU acceleration is unavailable, a graceful software fallback should be used.

ACTUAL BEHAVIOR

  WARNING: GBM is not supported with the current configuration. Fallback to
Vulkan rendering in Chromium.
  Segmentation fault (core dumped)

Application crashes immediately after the GBM warning. No document is ever
shown.

SOFTWARE/OS VERSIONS
  OS:           EndeavourOS (Arch-based), kernel 6.18.9-arch1-2
  Desktop:      GNOME 49.4, Wayland
  iGPU:         Intel HD Graphics 4600 (Haswell)
  dGPU:         NVIDIA GeForce GTX 950M
  Mesa:         26.0.3
  qt6-webengine: 6.11.0-2
  Ghostwriter:  25.12.3-1 (Arch repos), cmark 0.31.2
  KDE Frameworks: not installed

ADDITIONAL INFORMATION

Workaround found — setting Chromium flags before launch fixes the crash:

  QTWEBENGINE_CHROMIUM_FLAGS="--disable-gpu-compositing --disable-vulkan"
ghostwriter

As a .desktop override (~/.local/share/applications/ghostwriter.desktop):

  Exec=env QTWEBENGINE_CHROMIUM_FLAGS="--disable-gpu-compositing
--disable-vulkan" ghostwriter %f

What was tried:

  ghostwriter                                                          -> CRASH
(segfault)
  prime-run ghostwriter                                                ->
Launches, preview shows black square
  QT_QPA_PLATFORM=xcb ghostwriter                                     -> CRASH
(same result as wayland)
  QTWEBENGINE_DISABLE_GPU=1 ghostwriter                                -> CRASH
(Qt-level flag doesn't reach Chromium)
  QTWEBENGINE_CHROMIUM_FLAGS="--disable-vulkan" ghostwriter            -> CRASH
  QTWEBENGINE_CHROMIUM_FLAGS="--disable-gpu-compositing" ghostwriter   -> OK
  QTWEBENGINE_CHROMIUM_FLAGS="--disable-gpu-compositing --disable-vulkan"
ghostwriter -> OK, fully stable

Backtrace attached. Crash originates in libgallium called from
RenderWidgetHostViewQtDelegateItem::updatePaintNode inside QtWebEngine.

Suggested fix:
Ghostwriter could apply these Chromium flags automatically as a fallback when
GBM
initialization fails, or document this workaround prominently for hybrid GPU
laptop
users. Alternatively, detecting the "GBM is not supported" condition and
warning the
user rather than crashing would be a significant improvement.

Note: low-level crash details also filed at Mesa GitLab
(https://gitlab.freedesktop.org/freedesktop/freedesktop/-/work_items/3208).

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

Reply via email to