Regression: GNOME logout black screen on Framework Laptop 16 in Bluefin 44.20260512
kind/bugframeworkarea/upstreamrelease-blockerarea/gnomearea/hardware
### Describe the bug
On Bluefin DX stable 44.20260512, clicking Log Out from a GNOME Wayland session on a Framework Laptop 16 blanks the display to a black screen. The keyboard backlight and lid state still react, and reboot/user switching work normally. The failure appears isolated to GNOME session teardown/logout.
Booting the previous deployment, 43.20260505, makes logout work normally. The failing deployment produced repeated gnome-shell coredumps during logout. The crash is in Mutter's KMS shutdown path after the AMD dGPU resumes and gnome-shell fails to reopen /dev/dri/card1 with EBUSY.
### What did you expect to happen?
Clicking Log Out should end the GNOME session and return to the GDM login screen. It should not blank the display or crash gnome-shell.
### Output of `bootc status`
Note: this was captured while booted into the working rollback deployment, 43.20260505. The output still shows the broken 44.20260512 deployment as the rollback/cached update, including its digest.
```shell
apiVersion: org.containers.bootc/v1
kind: BootcHost
metadata:
name: host
spec:
image:
image: ghcr.io/ublue-os/bluefin-dx:stable
transport: registry
signature: containerPolicy
bootOrder: rollback
status:
staged: null
booted:
image:
image:
image: ghcr.io/ublue-os/bluefin-dx:stable
transport: registry
signature: containerPolicy
version: '43.20260505'
timestamp: 2026-05-05T01:52:31Z
imageDigest: sha256:67051954fb6d05e479260388c03f806c373567a9a410ef4f998c5bb48ce5f480
architecture: amd64
cachedUpdate:
image:
image: ghcr.io/ublue-os/bluefin-dx:stable
transport: registry
signature: containerPolicy
version: '44.20260512'
timestamp: 2026-05-12T01:50:35Z
imageDigest: sha256:edf5ac9edcc1fb152a157b354ae87870b3ea1d7753e5b52ab5cff2f98e3bed28
architecture: amd64
incompatible: false
pinned: false
softRebootCapable: true
downloadOnly: false
store: ostreeContainer
ostree:
stateroot: default
checksum: 6be73018c8a64e8be69e7f25dfbbd5da557ac13349fb494e5862371097c9b550
deploySerial: 0
composefs: null
rollback:
image:
image:
image: ghcr.io/ublue-os/bluefin-dx:stable
transport: registry
signature: containerPolicy
version: '44.20260512'
timestamp: 2026-05-12T01:50:35Z
imageDigest: sha256:edf5ac9edcc1fb152a157b354ae87870b3ea1d7753e5b52ab5cff2f98e3bed28
architecture: amd64
cachedUpdate: null
incompatible: false
pinned: false
softRebootCapable: false
downloadOnly: false
store: ostreeContainer
ostree:
stateroot: default
checksum: 572c0725654b8b49f34dafcfa071834a371f520fa44ff8d3f12e1dd4d6a3e571
deploySerial: 0
composefs: null
rollbackQueued: true
type: bootcHost
usrOverlay: null
```
### Output of `groups`
Affected local username redacted:
```shell
<local-user> wheel docker incus-admin libvirt dialout
```
### Extra information or context
Regression check:
- Working deployment: Bluefin DX stable 43.20260505
- Broken deployment: Bluefin DX stable 44.20260512
- The issue was reproduced multiple times on 44.20260512.
- The issue stopped after booting 43.20260505.
System details from the broken deployment:
```text
Kernel: 6.19.14-101.fc44.x86_64
GNOME Shell: gnome-shell-50.1-2.fc44.x86_64
Mutter: mutter-50.1-1.fc44.x86_64
Mesa modules in coredump: mesa-26.0.6-4.fc44.x86_64
Hardware: Framework Laptop 16, AMD hybrid graphics
```
GPU mapping:
```text
03:00.0 VGA compatible controller: AMD Navi 33 [1002:7480]
c4:00.0 VGA compatible controller: AMD Phoenix1 [1002:15bf]
/dev/dri/card1 -> PCI 0000:03:00.0, Navi 33 dGPU
/dev/dri/card2 -> PCI 0000:c4:00.0, Phoenix iGPU
```
Key logout crash logs from the broken deployment, with hostname, local usernames, machine ID, boot ID, and full local paths redacted:
```text
May 17 19:07:03 <host> gnome-shell[5189]: Shutting down GNOME Shell
May 17 19:07:03 <host> systemd[4780]: Stopping org.gnome.Shell@user.service - GNOME Shell...
May 17 19:07:03 <host> gnome-shell[5189]: Connection to xwayland lost
May 17 19:07:04 <host> kernel: amdgpu 0000:03:00.0: amdgpu: PSP is resuming...
May 17 19:07:04 <host> kernel: amdgpu 0000:03:00.0: amdgpu: SMU is resuming...
May 17 19:07:04 <host> kernel: amdgpu 0000:03:00.0: amdgpu: SMU driver if version not matched
May 17 19:07:04 <host> kernel: amdgpu 0000:03:00.0: amdgpu: SMU is resumed successfully!
May 17 19:07:05 <host> kernel: amdgpu 0000:03:00.0: [drm] Cannot find any crtc or sizes
May 17 19:07:05 <host> gnome-shell[5189]: Failed to reopen '/dev/dri/card1': GDBus.Error:System.Error.EBUSY: Device or resource busy
May 17 19:07:05 <host> gnome-shell[5189]: g_hash_table_iter_init: assertion 'hash_table != NULL' failed
May 17 19:07:05 <host> audit[5189]: ANOM_ABEND auid=1000 uid=1000 gid=1000 ses=3 ... exe="/usr/bin/gnome-shell" sig=11 res=1
May 17 19:07:05 <host> kernel: KMS thread[5245]: segfault at 180edb398 ip 00007f029d5c4d04 sp 00007f0280edb2b0 error 4 ...
May 17 19:07:06 <host> systemd-coredump[23107]: Process 5189 (gnome-shell) of user 1000 dumped core.
May 17 19:07:06 <host> systemd[4780]: org.gnome.Shell@user.service: Main process exited, code=dumped, status=11/SEGV
May 17 19:07:06 <host> systemd[4780]: org.gnome.Shell@user.service: Failed with result 'core-dump'.
```
Immediately after the crash, GDM started but could not open the iGPU card and selected the dGPU:
```text
May 17 19:07:07 <host> gnome-shell[23321]: Running GNOME Shell (using mutter 50.1) as a Wayland display server
May 17 19:07:07 <host> gnome-shell[23321]: Added device '/dev/dri/card1' (amdgpu) using atomic mode setting.
May 17 19:07:07 <host> gnome-shell[23321]: Failed to open gpu '/dev/dri/card2': GDBus.Error:System.Error.EBUSY: Device or resource busy
May 17 19:07:07 <host> gnome-shell[23321]: Created gbm renderer for '/dev/dri/card1'
May 17 19:07:07 <host> gnome-shell[23321]: GPU /dev/dri/card1 selected as primary
```
Coredump stack excerpt:
```text
PID: 5189 (gnome-shell)
UID: 1000
Signal: 11 (SEGV)
Command Line: /usr/bin/gnome-shell --mode=user
User Unit: org.gnome.Shell@user.service
Stack trace of thread 5245:
#0 0x00007f029d5c4d04 g_hash_table_iter_next (libglib-2.0.so.0 + 0x2dd04)
#1 0x00007f029d0fdd3a disarm_all_frame_sources.lto_priv.0 (libmutter-18.so.0 + 0x187d3a)
#2 0x00007f029d0fddfd prepare_shutdown_in_impl (libmutter-18.so.0 + 0x187dfd)
#3 0x00007f029d11dec5 meta_thread_impl_dispatch (libmutter-18.so.0 + 0x1a7ec5)
#4 0x00007f029d11dfea impl_source_dispatch (libmutter-18.so.0 + 0x1a7fea)
#8 0x00007f029d122276 thread_impl_func (libmutter-18.so.0 + 0x1ac276)
Stack trace of thread 5189:
#2 0x00007f029d11b10d run_impl_task_sync_kernel (libmutter-18.so.0 + 0x1a510d)
#3 0x00007f029d102c2a on_prepare_shutdown.lto_priv.4 (libmutter-18.so.0 + 0x18cc2a)
#14 0x00007f029d02baab meta_context_dispose.lto_priv.0 (libmutter-18.so.0 + 0xb5aab)
#16 0x00007f029d02b70e meta_context_destroy (libmutter-18.so.0 + 0xb570e)
```
Repeated gnome-shell coredumps with the same signature:
```text
Sat 2026-05-16 13:22:54 EEST 5364 UID 1000 SIGSEGV /usr/bin/gnome-shell
Sat 2026-05-16 20:46:55 EEST 140830 UID 1000 SIGSEGV /usr/bin/gnome-shell
Sun 2026-05-17 19:07:06 EEST 5189 UID 1000 SIGSEGV /usr/bin/gnome-shell
```
Possibly related upstream report:
- GNOME Mutter issue/work item 4018: Crash in disarm_all_frame_sources
- https://gitlab.gnome.org/GNOME/mutter/-/issues/4018
Privacy note:
- The raw diagnostic bundle is not attached because it contains local hostnames, local usernames, machine IDs, boot IDs, coredump storage paths, and full local paths.
- This text has those values omitted or redacted.
0 条评论