1

I recently upgraded the kernel on my KUbuntu 22.04 desktop machine to version 6.5.0-14. It now will not boot successfully to the default kernel, with the error message:

[5.something-something] Bluetooth: hci0: Opcode 0xfc1e failed: -16

However, if I start it on kernel 6.2, absolutely everything works fine including Bluetooth pairing with my phone.. (I'm using the same machine now.) I know that hci0 is my first (and only) Bluetooth device; unfortunately I have no idea what "Opcode 0xfc1e" is or what "-16" is supposed to mean to me.

How can I fix this so I can boot to the most modern kernel again?

For additional data, my Bluetooth is integrated into my MSI motherboard, there's no visible hard switch. I've successfully gotten it to sort of boot to the 6.5 kernel by dropping to a terminal with recovery mode, and manually disabling Bluetooth with sudo rfkill block bluetooth; however, that prevents my graphics driver from loading even if it does get me to a desktop, which is... limiting, for a multimedia guy. It's also worth pointing out that while I could re-enable Bluetooth from the GUI (KDE Plasma, here), it did not seem to detect any devices.

Does anyone recognize what is happening here, and how I can resolve it?

ADDENDUM: When running dmesg, I have some interesting outputs related to Bluetooth which are bright red and probably of use here:

[10043.376565] Bluetooth: hci0: corrupted SCO packet
[10043.376575] Bluetooth: hci0: corrupted SCO packet
[10043.376580] Bluetooth: hci0: corrupted SCO packet
[10043.376584] Bluetooth: hci0: corrupted SCO packet
[10043.376589] Bluetooth: hci0: corrupted SCO packet
[10067.006243] Bluetooth: hci0: corrupted SCO packet
[10067.006260] Bluetooth: hci0: corrupted SCO packet
[10067.006266] Bluetooth: hci0: corrupted SCO packet
[10067.006273] Bluetooth: hci0: corrupted SCO packet
[10067.006279] Bluetooth: hci0: corrupted SCO packet
[10067.006285] Bluetooth: hci0: corrupted SCO packet
[10068.012375] Bluetooth: hci0: urb 00000000cece2684 submission failed (90)
[10068.012387] Bluetooth: hci0: sending frame failed (-90)
[10068.012393] Bluetooth: hci0: urb 00000000cece2684 submission failed (90)
[10068.012398] Bluetooth: hci0: sending frame failed (-90)
[10068.012403] Bluetooth: hci0: urb 00000000cece2684 submission failed (90)
[10068.012407] Bluetooth: hci0: sending frame failed (-90)
[10068.024247] Bluetooth: hci0: corrupted SCO packet
[10068.024258] Bluetooth: hci0: corrupted SCO packet
[10068.024264] Bluetooth: hci0: corrupted SCO packet
[10068.024270] Bluetooth: hci0: corrupted SCO packet
[10068.024282] Bluetooth: hci0: corrupted SCO packet
[10068.024288] Bluetooth: hci0: corrupted SCO packet
[10068.024295] Bluetooth: hci0: corrupted SCO packet
[10068.024300] Bluetooth: hci0: corrupted SCO packet
[10068.024307] Bluetooth: hci0: corrupted SCO packet
[10068.024312] Bluetooth: hci0: corrupted SCO packet
[10068.034241] Bluetooth: hci0: corrupted SCO packet
[10075.864138] Bluetooth: hci0: corrupted SCO packet
[10075.864152] Bluetooth: hci0: corrupted SCO packet
[10075.864158] Bluetooth: hci0: corrupted SCO packet
[10075.886953] Bluetooth: hci0: SCO packet for unknown connection handle 264

I'm not entirely sure what an SCO packet is, but I'm going to attempt to turn my machine off later today, hit the hard switch on the PSU, drain the capacitors with 20-30 seconds of the power button, switch the PSU back on and see if a proper cold boot fixes it for 6.5. I'm not convinced that nothing is being maintained in firmware memory during a reboot.

ADDENDUM 2: So, I went ahead and shut off my machine, drained the capacitors, and restarted it. I'm still stuck on kernel 6.2, but now I get a completely different error message:

[6.796029] Bluetooth: hci0: Malformed MSFT vendor event: 0x02

I have no idea what this means, and apparently, neither do many other people who have seen it. (I admit to shuddering at the word "vendor" in there...) It also halts the boot process, though I can drop to a console with Ctrl+Alt+F2 and run startx to get XFCE going. Kernel 6.2 (thank God) still runs fine, including with Bluetooth.

UPDATE: My assumption at the moment is that this is a stock kernel error that manifests on my hardware, and unfortunately I'm not Linux-wise enough to be able to fix it myself. Linux 6.5 is pretty dangerously close to cutting edge, and 6.2 is working fine; so I'm going to, for my own education, continue to research what some of these error messages mean, and then probably just migrate back to 6.2. I'll close the question with a final update, for future reference, when I'm content with it.

0

You must log in to answer this question.

Browse other questions tagged .