Public bug reported:
## Summary
gnome-shell repeatedly aborts (SIGABRT) inside Mesa's gallium driver, in
dri_create_fence_fd(), called from libEGL_mesa.so.0 during
cogl_onscreen_swap_buffers_with_damage() in libmutter-cogl-14 (Mutter 46.0 /
GNOME Shell 46.0-0ubuntu6~24.04.14). The crash is fatal to the whole graphical
session: gnome-session treats it as an "Unrecoverable failure in required
component org.gnome.Shell.desktop", Xwayland (a mandatory dependency) is
killed as a result ("Connection to xwayland lost" / "Xwayland terminated,
exiting since it was mandatory"), and the entire session is torn down and
restarted by GDM. All running applications are closed without warning.
This has occurred twice in ~22 hours on the same machine, hitting both the
GDM greeter's gnome-shell instance (uid gdm) and the logged-in user's
gnome-shell instance (uid 1000), with the identical crash signature.
## System
- Ubuntu 24.04 (Noble), kernel 6.17.0-1025-oem (linux-oem-24.04b)
- Hardware: Lenovo ThinkPad T16 Gen 4 (21QECTO1WW), Intel Arrow Lake-U
(Core Ultra), integrated GPU PCI ID 8086:7D41 (Xe2 / Xe-LPG)
- GPU driver: xe (forced via xe.force_probe=7D41 i915.force_probe=!7D41,
applied to work around an earlier, unrelated i915 DMA-BUF leak)
- mesa-libgallium 25.2.8-0ubuntu0.24.04.1
- gnome-shell 46.0-0ubuntu6~24.04.14
- Wayland session
## Stack trace (identical in both occurrences)
```
#0 __pthread_kill_implementation (...) at ./nptl/pthread_kill.c:44
#1 __pthread_kill_internal (...) at ./nptl/pthread_kill.c:78
#2 __GI___pthread_kill (...) at ./nptl/pthread_kill.c:89
#3 0x... in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4 0x... in __GI_abort () at ./stdlib/abort.c:79
#5 0x... in ?? () from
/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.1.so
#6 0x... in ?? () from
/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.1.so
#7 0x... in ?? () from
/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.1.so
#8 0x... in ?? () from
/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.1.so
#9 0x... in dri_create_fence_fd () from
/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.1.so
#10 0x... in ?? () from /lib/x86_64-linux-gnu/libEGL_mesa.so.0
#11 0x... in ?? () from /lib/x86_64-linux-gnu/libEGL_mesa.so.0
#12 0x... in ?? () from /lib/x86_64-linux-gnu/libEGL_mesa.so.0
#13 0x... in ?? () from
/usr/lib/x86_64-linux-gnu/mutter-14/libmutter-cogl-14.so.0
#14 0x... in cogl_onscreen_swap_buffers_with_damage () from
/usr/lib/x86_64-linux-gnu/mutter-14/libmutter-cogl-14.so.0
#15 0x... in ?? () from /lib/x86_64-linux-gnu/libmutter-14.so.0
```
(Frames #5-#13 are unsymbolized — matching -dbgsym packages for
mesa-libgallium 25.2.8 do not appear to be available yet in ddebs.)
Since this is abort() rather than a segfault, it looks like an assertion or
an explicit unreachable()/abort path inside the gallium DRI fence-creation
code, not a wild memory access.
## Occurrence 1 — 2026-06-13 15:32:03
- gnome-shell (user session, uid 1000) crashed.
- Journal: "Connection to xwayland lost" / "Xwayland terminated, exiting
since it was mandatory" at 15:32:03.
- Apport crash report: /var/crash/_usr_bin_gnome-shell.1000.crash
- Context: ~30 minutes earlier (14:59:37-15:02:08), Shmem/page-cache spiked
from ~200MB to ~24GB in under 90 seconds, triggering the kernel OOM killer,
which killed two Spotify (snap) processes. Memory returned to normal within
seconds. It's possible (but not confirmed) that this memory event left the
shared GPU/DRM buffer state in a bad state that caused the later crash —
or the two events may be unrelated.
## Occurrence 2 — 2026-06-14 13:39:57 / 13:40:09
- GDM greeter's gnome-shell (uid gdm) crashed at 13:39:57.
- User session's gnome-shell (uid 1000) crashed ~12 seconds later, at
13:40:09 ("Application 'org.gnome.Shell.desktop' killed by signal 6").
- Apport crash report: /var/crash/_usr_bin_gnome-shell.120.crash
- Context: memory was completely healthy at the time (>20GB available, no
swap pressure, no OOM activity in the kernel log). So this occurrence rules
out memory pressure as a necessary precondition.
- Side note: rtkit-daemon had not been running for the ~49h since boot
(gnome-shell repeatedly logged "Failed to make thread 'KMS thread' realtime
scheduled: ...RealtimeKit1 does not exist"); it auto-started at 13:40:09,
coincident with the crash. Possibly incidental (on-demand D-Bus activation
triggered by the new gnome-shell instance starting up), but noting it in
case it's relevant.
## Possible trigger conditions
This machine normally runs in "clamshell mode": the laptop lid is kept
closed and an external monitor (HDMI-1, 3840x2160) is the only active
display. Both crashes occurred while operating in this configuration.
- Occurrence 2 (2026-06-14) coincides closely with a lid-reopen event:
`systemd-logind` logged a flurry of "Lid opened"/"Lid closed" transitions
between 13:39:12 and 13:40:20, and the gnome-shell crash hit at 13:39:57 —
within ~40 seconds of the lid being reopened (i.e., the user returning to
the machine after being away). This raises the possibility that a
display-wake/output-reconfiguration path interacts badly with the
buffer-swap code (`cogl_onscreen_swap_buffers_with_damage` /
`dri_create_fence_fd`).
- Occurrence 1 (2026-06-13) does not show the same pattern: the last lid
event before the crash was at 13:57:09 (lid closed), about 1.5 hours
earlier, with no lid/resume activity logged near the 15:32:03 crash time.
- No DRM connector hotplug/unplug events were logged for the external
monitor during this boot in either case — the external display appears to
have stayed connected continuously, so a connect/disconnect event itself
is not implicated.
Given occurrence 1 doesn't fit the lid-reopen pattern, this is offered as a
possible lead rather than a confirmed trigger — but the persistent
lid-closed/external-monitor configuration is common to both crashes and may
be relevant (e.g., if Mutter is managing a "virtual" internal panel state
alongside the real external output).
## Steps to reproduce
Not reliably reproducible on demand. Occurs roughly once a day during normal
desktop use (web browsing, Spotify, Thunderbird, terminal/editor use,
Docker containers running in the background). No specific user action was
being performed at either crash time that we're aware of.
## Additional info available on request
- Full apport .crash files for both occurrences (large, contain full core
dumps).
- ~30-second-resolution process/memory logs (`ps`/`free` snapshots) around
occurrence 1.
** Affects: mesa (Ubuntu)
Importance: Undecided
Status: New
** Tags: libgallium xe
** Tags added: xe
** Tags added: libgallium
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2156739
Title:
gnome-shell crashes with SIGABRT in dri_create_fence_fd() (mesa-
libgallium 25.2.8) on Arrow Lake-U / Xe2 iGPU during
cogl_onscreen_swap_buffers_with_damage
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/2156739/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs