Public bug reported:
**System Information:**
* Computer Model: Lenovo Legion [Model 83F2]
* Processor: AMD Ryzen 9 9955HX 16-Core
* OS: Ubuntu 25.10
* Kernel Version: 6.17.0-8-generic
* BlueZ Source Package: bluez
* Package Version: 5.83-1~exp1ubuntu0.1
* Session Type: Wayland
* Desktop Environment: GNOME Shell 49.0
* Bluetooth Controller: MediaTek MT7925 (PCIe)
* Driver Module: mt7925e
* Firmware Version: 0x8a108a10 (Build: 20251015212927a)
**Methodology & AI Assistance:**
* Analysis Tool: Google Gemini 3 Pro
* Role in Troubleshooting:
1. **Log Analysis:** Parsed `dmesg` and `journalctl` outputs to isolate the
`segfault` event and correlate it with the exact timestamp of the
GDM-to-Desktop session transition.
2. **Error Correlation:** Identified the link between the `corrupted ACL
packet` messages and the subsequent daemon crash.
3. **Data Sanitization:** Automatically filtered the logs attached below to
remove private identifiers (MAC addresses, usernames, serial numbers) while
preserving critical debug data.
**What I expected to happen:**
The Bluetooth service should maintain continuity and the keyboard connection
should persist when transitioning from the GDM Login Screen to the user
Desktop, or when waking the system from Suspend.
**Problem Description:**
I am reporting a reproducible segfault in `bluetoothd` that occurs during
**Power State Transitions**. The crash is triggered in two specific scenarios:
1. **Session Handoff:** Transitioning from the GDM Login Screen to the Wayland
user desktop session.
2. **Suspend/Resume:** Waking the system from Suspend (S3/s2idle) and logging
back in.
**Steps to Reproduce (Scenario A - Login):**
1. Boot the system.
2. Bluetooth functions correctly at the GDM login screen.
3. Log in to the GNOME user session.
4. Immediately upon loading the desktop, the Bluetooth service crashes/stops.
**Steps to Reproduce (Scenario B - Suspend):**
1. While logged in (and assuming Bluetooth was restored via workaround), click
"Suspend".
2. Wake the computer and unlock the screen.
3. Bluetooth is found to be "Off" and the toggle in GNOME Settings is
unresponsive/greyed out.
**Observed Behavior:**
The daemon crashes or hangs precisely when the system attempts to re-initialize
the bluetooth adapter state after a pause/handoff. The issue specifically
affects the MediaTek MT7925 driver on Kernel 6.17.
**Sanitized Logs:**
Kernel dmesg output shows the daemon segfaulting followed by ACL packet
corruption from the controller. Timestamps are uptime seconds.
[ 281.303420] bluetoothd[5923]: segfault at 60cf04cb2fba ip 000060c8cc8af882
sp 00007ffc965fe320 error 4 in bluetoothd
[ 1712.643748] Bluetooth: hci0: corrupted ACL packet
**Mitigation Attempts (Failed):**
The following steps were taken to rule out configuration issues, but none
resolved the crash:
1. Disabled USB Autosuspend (`btusb.enable_autosuspend=0`).
2. Reinstalled `bluez`, `libbluetooth3`, and `bluez-obexd` packages (Confirmed
version: 5.83-1~exp1ubuntu0.1).
**Workaround:**
Functionality is not restored automatically. The user must manually execute a
script to force a full driver reload:
1. `sudo modprobe -r btusb` (Unload kernel driver)
2. `sleep 5` (Wait for hardware release)
3. `sudo modprobe btusb` (Reload kernel driver)
4. `sudo systemctl restart bluetooth` (Restart userspace daemon)
** Affects: bluez (Ubuntu)
Importance: Undecided
Status: New
** Tags: bluetoothd bluez mediatek mt7925
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2137719
Title:
bluetoothd 5.83 segfault during GDM to Desktop session handoff on
Ubuntu 25.10 (MediaTek MT7925 / GNOME 49)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/2137719/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs