Kernel 6.11.3-200.fc40 unable to resume from suspend when bluetooth enabled

Hello everyone,

I have been having a weird issue that I thought was maybe GPU or monitor related because it seemed to happen on multiple distros. I recently realized the one common denominator was Kernel 6.11.

I am unable to wake my computer from suspend and get video output unless bluetooth is disabled. The computer does wake, I hear the fans, and peripherals are on. The external display wakes for a second but stays black, but then the monitor says there is no display output and goes to sleep. If I reboot and disable bluetooth, I no longer have this problem.

This issue has happened to me on Fedora 41 with Kernel 6.11, PopOS 24 with COSMIC Alpha 2, and now on Fedora 40 with the recent update to Kernel 6.11.3-200fc40 I received today. I have also seen the issue on Silverblue (which I am currently using)

My hardware is:

Ryzen 9600x
32GB DDR5
AMD XFX 7600
ASRock B650I Lightning WiFi (Firmware 3.06)
GNOME 46
Wayland
Network controller: MEDIATEK Corp. MT7922 802.11ax PCI Express Wireless Network Adapter
Linux 6.11.3-200.fc40.x86_64
Fedora Linux 40.20241017.0 (Silverblue)

I have been able to re-create with the following hardware changes as well:

Gigabyte RTX 4060 replacing the RX 7600 (and akmods)
HDMI 2.0 replacing the Displayport 1.4

What seems to enable to computer to display properly after waking from suspend is turning off the bluetooth option in the Gnome settings dropdown.

I used the following command to get the logs that seem relevant from my previous boot when it failed to resume properly using the following command
journalctl -o short-precise -k -b -1

Oct 17 14:57:43.673286 fedora kernel: logitech-hidpp-device 0003:046D:4074.0007: HID++ 4.2 device connected.
Oct 17 14:57:47.048099 fedora systemd-journald[1145]: /var/log/journal/b95fcdb71b44492eb7288424f5d9550b/user-1000.journal: Journal file uses a different sequence number ID, rotating.
Oct 17 14:57:47.329337 fedora kernel: rfkill: input handler enabled
Oct 17 14:57:47.903388 fedora kernel: rfkill: input handler disabled
Oct 17 14:57:56.205269 fedora kernel: Bluetooth: hci0: Device setup in 21257324 usecs
Oct 17 14:57:56.205331 fedora kernel: Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
Oct 17 14:57:56.484269 fedora kernel: Bluetooth: hci0: AOSP extensions version v1.00
Oct 17 14:57:56.484337 fedora kernel: Bluetooth: hci0: AOSP quality report is supported
Oct 17 14:57:56.503254 fedora kernel: Bluetooth: MGMT ver 1.23
Oct 17 14:57:56.509267 fedora kernel: Bluetooth: RFCOMM TTY layer initialized
Oct 17 14:57:56.509314 fedora kernel: Bluetooth: RFCOMM socket layer initialized
Oct 17 14:57:56.509325 fedora kernel: Bluetooth: RFCOMM ver 1.11
Oct 17 14:58:37.771257 fedora kernel: r8169 0000:72:00.0 enp114s0: Link is Down
Oct 17 14:58:38.612936 fedora kernel: PM: suspend entry (deep)
Oct 17 14:58:38.645266 fedora kernel: Filesystems sync: 0.032 seconds
Oct 17 14:59:04.861337 fedora kernel: Freezing user space processes
Oct 17 14:59:04.861476 fedora kernel: Freezing user space processes completed (elapsed 0.001 seconds)
Oct 17 14:59:04.861495 fedora kernel: OOM killer disabled.
Oct 17 14:59:04.861519 fedora kernel: Freezing remaining freezable tasks
Oct 17 14:59:04.861537 fedora kernel: Freezing remaining freezable tasks completed (elapsed 0.000 seconds)
Oct 17 14:59:04.861554 fedora kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Oct 17 14:59:04.861569 fedora kernel: xhci_hcd 0000:74:00.0: xHC error in resume, USBSTS 0x401, Reinit
Oct 17 14:59:04.862180 fedora kernel: usb usb1: root hub lost power or was reset
Oct 17 14:59:04.862365 fedora kernel: usb usb2: root hub lost power or was reset
Oct 17 14:59:04.862505 fedora kernel: PM: suspend devices took 0.436 seconds
Oct 17 14:59:04.862517 fedora kernel: amdgpu 0000:03:00.0: amdgpu: MODE1 reset
Oct 17 14:59:04.862605 fedora kernel: amdgpu 0000:03:00.0: amdgpu: GPU mode1 reset
Oct 17 14:59:04.862681 fedora kernel: amdgpu 0000:03:00.0: amdgpu: GPU smu mode1 reset
Oct 17 14:59:04.862751 fedora kernel: ACPI: PM: Preparing to enter system sleep state S3
Oct 17 14:59:04.862760 fedora kernel: ACPI: PM: Saving platform NVS memory
Oct 17 14:59:04.862769 fedora kernel: Disabling non-boot CPUs ...
Oct 17 14:59:04.862778 fedora kernel: smpboot: CPU 11 is now offline
Oct 17 14:59:04.862787 fedora kernel: smpboot: CPU 10 is now offline
Oct 17 14:59:04.862795 fedora kernel: smpboot: CPU 9 is now offline
Oct 17 14:59:04.862804 fedora kernel: smpboot: CPU 8 is now offline
Oct 17 14:59:04.862813 fedora kernel: smpboot: CPU 7 is now offline
Oct 17 14:59:04.862824 fedora kernel: smpboot: CPU 6 is now offline
Oct 17 14:59:04.862836 fedora kernel: Spectre V2 : Update user space SMT mitigation: STIBP off
Oct 17 14:59:04.862845 fedora kernel: smpboot: CPU 5 is now offline
Oct 17 14:59:04.862854 fedora kernel: smpboot: CPU 4 is now offline
Oct 17 14:59:04.862863 fedora kernel: smpboot: CPU 3 is now offline
Oct 17 14:59:04.862873 fedora kernel: smpboot: CPU 2 is now offline
Oct 17 14:59:04.862883 fedora kernel: smpboot: CPU 1 is now offline
Oct 17 14:59:04.862891 fedora kernel: ACPI: PM: Low-level resume complete
Oct 17 14:59:04.862900 fedora kernel: ACPI: PM: Restoring platform NVS memory
Oct 17 14:59:04.862909 fedora kernel: AMD-Vi: Virtual APIC enabled
Oct 17 14:59:04.862916 fedora kernel: AMD-Vi: Virtual APIC enabled
Oct 17 14:59:04.862923 fedora kernel: LVT offset 0 assigned for vector 0x400
Oct 17 14:59:04.862931 fedora kernel: Enabling non-boot CPUs ...
Oct 17 14:59:04.862938 fedora kernel: smpboot: Booting Node 0 Processor 1 APIC 0x2
Oct 17 14:59:04.862946 fedora kernel: ACPI: \_SB_.PLTF.C002: Found 3 idle states
Oct 17 14:59:04.862957 fedora kernel: CPU1 is up
Oct 17 14:59:04.862967 fedora kernel: smpboot: Booting Node 0 Processor 2 APIC 0x4
Oct 17 14:59:04.862974 fedora kernel: ACPI: \_SB_.PLTF.C004: Found 3 idle states
Oct 17 14:59:04.862983 fedora kernel: CPU2 is up
Oct 17 14:59:04.862992 fedora kernel: smpboot: Booting Node 0 Processor 3 APIC 0x6
Oct 17 14:59:04.863001 fedora kernel: ACPI: \_SB_.PLTF.C006: Found 3 idle states
Oct 17 14:59:04.863010 fedora kernel: CPU3 is up
Oct 17 14:59:04.863019 fedora kernel: smpboot: Booting Node 0 Processor 4 APIC 0x8
Oct 17 14:59:04.863026 fedora kernel: ACPI: \_SB_.PLTF.C008: Found 3 idle states
Oct 17 14:59:04.863037 fedora kernel: CPU4 is up
Oct 17 14:59:04.863046 fedora kernel: smpboot: Booting Node 0 Processor 5 APIC 0xa
Oct 17 14:59:04.863054 fedora kernel: ACPI: \_SB_.PLTF.C00A: Found 3 idle states
Oct 17 14:59:04.863064 fedora kernel: CPU5 is up
Oct 17 14:59:04.863073 fedora kernel: smpboot: Booting Node 0 Processor 6 APIC 0x1
Oct 17 14:59:04.863082 fedora kernel: ACPI: \_SB_.PLTF.C001: Found 3 idle states
Oct 17 14:59:04.863091 fedora kernel: Spectre V2 : Update user space SMT mitigation: STIBP always-on
Oct 17 14:59:04.863100 fedora kernel: CPU6 is up
Oct 17 14:59:04.863107 fedora kernel: smpboot: Booting Node 0 Processor 7 APIC 0x3
Oct 17 14:59:04.863116 fedora kernel: Spurious APIC interrupt (vector 0xFF) on CPU#7, should never happen.
Oct 17 14:59:04.863125 fedora kernel: ACPI: \_SB_.PLTF.C003: Found 3 idle states
Oct 17 14:59:04.863135 fedora kernel: CPU7 is up
Oct 17 14:59:04.863143 fedora kernel: smpboot: Booting Node 0 Processor 8 APIC 0x5
Oct 17 14:59:04.863152 fedora kernel: Spurious APIC interrupt (vector 0xFF) on CPU#8, should never happen.
Oct 17 14:59:04.863161 fedora kernel: ACPI: \_SB_.PLTF.C005: Found 3 idle states
Oct 17 14:59:04.863171 fedora kernel: CPU8 is up
Oct 17 14:59:04.863179 fedora kernel: smpboot: Booting Node 0 Processor 9 APIC 0x7
Oct 17 14:59:04.863188 fedora kernel: Spurious APIC interrupt (vector 0xFF) on CPU#9, should never happen.
Oct 17 14:59:04.863197 fedora kernel: ACPI: \_SB_.PLTF.C007: Found 3 idle states
Oct 17 14:59:04.863205 fedora kernel: CPU9 is up
Oct 17 14:59:04.863213 fedora kernel: smpboot: Booting Node 0 Processor 10 APIC 0x9
Oct 17 14:59:04.863222 fedora kernel: Spurious APIC interrupt (vector 0xFF) on CPU#10, should never happen.
Oct 17 14:59:04.863231 fedora kernel: ACPI: \_SB_.PLTF.C009: Found 3 idle states
Oct 17 14:59:04.863239 fedora kernel: CPU10 is up
Oct 17 14:59:04.863248 fedora kernel: smpboot: Booting Node 0 Processor 11 APIC 0xb
Oct 17 14:59:04.863255 fedora kernel: Spurious APIC interrupt (vector 0xFF) on CPU#11, should never happen.
Oct 17 14:59:04.863265 fedora kernel: ACPI: \_SB_.PLTF.C00B: Found 3 idle states
Oct 17 14:59:04.863275 fedora kernel: CPU11 is up
Oct 17 14:59:04.863283 fedora kernel: ACPI: PM: Waking up from system sleep state S3
Oct 17 14:59:04.863292 fedora kernel: [drm] PCIE GART of 512M enabled (table at 0x00000081FEB00000).
Oct 17 14:59:04.863301 fedora kernel: amdgpu 0000:03:00.0: amdgpu: PSP is resuming...
Oct 17 14:59:04.863411 fedora kernel: xhci_hcd 0000:74:00.0: xHC error in resume, USBSTS 0x401, Reinit
Oct 17 14:59:04.863491 fedora kernel: usb usb1: root hub lost power or was reset
Oct 17 14:59:04.863588 fedora kernel: usb usb2: root hub lost power or was reset
Oct 17 14:59:04.863677 fedora kernel: nvme nvme0: 12/0/0 default/read/poll queues
Oct 17 14:59:04.863746 fedora kernel: amdgpu 0000:03:00.0: amdgpu: reserve 0x1300000 from 0x81fc000000 for PSP TMR
Oct 17 14:59:04.863811 fedora kernel: amdgpu 0000:03:00.0: amdgpu: RAS: optional ras ta ucode is not available
Oct 17 14:59:04.863886 fedora kernel: amdgpu 0000:03:00.0: amdgpu: RAP: optional rap ta ucode is not available
Oct 17 14:59:04.863960 fedora kernel: amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available
Oct 17 14:59:04.864033 fedora kernel: amdgpu 0000:03:00.0: amdgpu: SMU is resuming...
Oct 17 14:59:04.864104 fedora kernel: amdgpu 0000:03:00.0: amdgpu: smu driver if version = 0x00000035, smu fw if version = 0x00000040, smu fw program = 0, smu fw version = 0x00525c00 (82.92.0)
Oct 17 14:59:04.864168 fedora kernel: amdgpu 0000:03:00.0: amdgpu: SMU driver if version not matched
Oct 17 14:59:04.864225 fedora kernel: amdgpu 0000:03:00.0: amdgpu: SMU is resumed successfully!
Oct 17 14:59:04.864296 fedora kernel: [drm] DMUB hardware initialized: version=0x07002A00
Oct 17 14:59:04.864306 fedora kernel: ata3: SATA link down (SStatus 0 SControl 300)
Oct 17 14:59:04.864316 fedora kernel: ata4: SATA link down (SStatus 0 SControl 300)
Oct 17 14:59:04.864326 fedora kernel: ata1: SATA link down (SStatus 0 SControl 300)
Oct 17 14:59:04.864335 fedora kernel: ata2: SATA link down (SStatus 0 SControl 300)
Oct 17 14:59:04.864343 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0
Oct 17 14:59:04.864420 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
Oct 17 14:59:04.864482 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
Oct 17 14:59:04.864532 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 6 on hub 0
Oct 17 14:59:04.864586 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 7 on hub 0
Oct 17 14:59:04.864645 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 8 on hub 0
Oct 17 14:59:04.864701 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 9 on hub 0
Oct 17 14:59:04.864754 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 10 on hub 0
Oct 17 14:59:04.864804 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 11 on hub 0
Oct 17 14:59:04.864865 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma0 uses VM inv eng 12 on hub 0
Oct 17 14:59:04.864925 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma1 uses VM inv eng 13 on hub 0
Oct 17 14:59:04.864988 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8
Oct 17 14:59:04.865040 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring jpeg_dec uses VM inv eng 1 on hub 8
Oct 17 14:59:04.865100 fedora kernel: amdgpu 0000:03:00.0: amdgpu: ring mes_kiq_3.1.0 uses VM inv eng 14 on hub 0
Oct 17 14:59:04.865164 fedora kernel: usb 1-12: reset high-speed USB device number 2 using xhci_hcd
Oct 17 14:59:04.865250 fedora kernel: [drm] ring gfx_32771.1.1 was added
Oct 17 14:59:04.865256 fedora kernel: [drm] ring compute_32771.2.2 was added
Oct 17 14:59:04.865264 fedora kernel: [drm] ring sdma_32771.3.3 was added
Oct 17 14:59:04.865272 fedora kernel: [drm] ring gfx_32771.1.1 ib test pass
Oct 17 14:59:04.865281 fedora kernel: [drm] ring compute_32771.2.2 ib test pass
Oct 17 14:59:04.865290 fedora kernel: [drm] ring sdma_32771.3.3 ib test pass
Oct 17 14:59:04.865296 fedora kernel: PM: resume devices took 0.597 seconds
Oct 17 14:59:04.865305 fedora kernel: OOM killer enabled.
Oct 17 14:59:04.865311 fedora kernel: Restarting tasks ... done.
Oct 17 14:59:04.865319 fedora kernel: random: crng reseeded on system resumption
Oct 17 14:59:04.865327 fedora kernel: PM: suspend exit
Oct 17 14:59:04.903657 fedora kernel: RTL8226B_RTL8221B 2.5Gbps PHY r8169-0-7200:00: attached PHY driver (mii_bus:phy_addr=r8169-0-7200:00, irq=MAC)
Oct 17 14:59:04.999656 fedora kernel: Bluetooth: hci0: HW/SW Version: 0x008a008a, Build Time: 20240716163633
Oct 17 14:59:05.037729 fedora kernel: r8169 0000:72:00.0 enp114s0: Link is Down
Oct 17 14:59:07.581665 fedora kernel: r8169 0000:72:00.0 enp114s0: Link is Up - 1Gbps/Full - flow control rx/tx
Oct 17 14:59:26.030673 fedora kernel: Bluetooth: hci0: Device setup in 20673046 usecs
Oct 17 14:59:26.030781 fedora kernel: Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
Oct 17 14:59:26.306661 fedora kernel: Bluetooth: hci0: AOSP extensions version v1.00
Oct 17 14:59:26.306718 fedora kernel: Bluetooth: hci0: AOSP quality report is supported
Oct 17 14:59:26.326656 fedora kernel: Bluetooth: MGMT ver 1.23
Oct 17 15:00:40.880671 fedora kernel: Bluetooth: hci0: HW/SW Version: 0x008a008a, Build Time: 20240716163633
Oct 17 15:00:41.050680 fedora kernel: Bluetooth: hci0: Device setup in 179143 usecs
Oct 17 15:00:41.050792 fedora kernel: Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported.
Oct 17 15:00:41.331700 fedora kernel: Bluetooth: hci0: AOSP extensions version v1.00
Oct 17 15:00:41.331799 fedora kernel: Bluetooth: hci0: AOSP quality report is supported
Oct 17 15:00:46.685656 fedora kernel: r8169 0000:72:00.0 enp114s0: Link is Down
Oct 17 15:00:47.539662 fedora kernel: PM: suspend entry (deep)
Oct 17 15:00:47.549677 fedora kernel: Filesystems sync: 0.009 seconds


Please let me know if this is helpful information or if I need to run any other commands.
Thank you for.

6 Likes

I push this topic so that it is seen as a new one because it was accidentally marked as spam by the system and hidden for many hours.

1 Like

Is your BIOS up to date (no use chasing something that has already been fixed)?

How do you use bluetooth? It is possible that a side-effect of disabling bluetooth is affects the component responsible for the failure of the display to resume from sleep.

It could be useful to compare the journalctl output for resuming with bluetooth disabled. I would start by comparing lines with amdgpu for the 2 cases.

The journalctl output has Spurious APIC interrupt (vector 0xFF) on CPU#n. They also appear in Blank screen when waking from S3 sleep, disconnecting speakers fixes, also using an AMD CPU.

2 Likes

Thank you for the suggestions!

There was one new BIOS update available so I updated to that and will see if that changes anything.

I don’t actually use Bluetooth (but it’s nice to have available) so if the issue persist with the BIOS update I will also try disabling the wireless mediatek adapter in the BIOS.

I saw that CPU bug page you linked to when I was looking up some of the error messages and it does look relevant. Unfortunately I don’t know what patch it’s specifically referring to or how to ensure I have it.

I am also encountering the same problem, where bluetooth is intermittently not enabled on boot (requiring sudo rfkill unblock bluetooth) and display not resuming after sleep. This was after “some” recent Fedora Workstation 40 update, but I’m not sure exactly what.

Current system specs:

Kernel: 6.11.3-200.fc40
CPU: AMD Ryzen 5 5600X
GPU: AMD Radeon RX 6700 XT

Did you manage to resolve this?

I can’t really disable bluetooth as I use BT mouse.

1 Like

I have so far not had the issue with Kernel 6.11 (which was the version that caused the problem for me) since updating my BIOS and continuing to disable Bluetooth. I would also like to use Bluetooth in the future, so I will re-enable it and reply to you if the issue is still present (it seems to be intermittent otherwise I would simply let you know now)

I can confirm that after the BIOS update to my Motherboard / Mediatek chip the bluetooth issue with suspend/wake is still present on Fedora 41 with Kernel 6.11
I enabled bluetooth and immediately my computer was unable to resume normally after the first suspend (freezing despite the computer being audibly running, as before).

Same with fedora 40 mate and kernel 6.11.30 and Mediatek mt7921e. Freeze after suspend to RAM. After disabling bluetooth resume after supend is working fine.

If anyone else ends up here, you can rollback to 6.10.12-200.fc40.x86_64 (assuming you had that installed previously) by using sudo grubby --set-default-index=1.

Stability of my system greatly improves with this (bluetooth and display troubles go away).

1 Like

I’m facing this same problem in Fedora Silverblue on my notebook. Everything works apparently normally, but when I come back from sleep mode there is no image on the screen, everything is black. I have to force restart. Today, version 41 of Fedora came out, I updated it and continued to have the same problem, forcing me to roll back to kernel 6.8.

My hardware is:

Ryzen 5700u
16GB DDR4
Acer Aspire 5

https://bugzilla.redhat.com/show_bug.cgi?id=2314036

I worked around this on OpenSUSE Tumbleweed by adding a Systemd script that disables Bluetooth right before suspend and re-enabling it on wake.

Make a file /usr/lib/systemd/system-sleep/bluetooth-toggle.sh and chmod +x it.

Add this to the script:

#!/usr/bin/env bash

# Define a temporary file to store the Bluetooth status
STATUS_FILE="/tmp/bluetooth_status_before_suspend"

case "$1" in
    pre)
        if systemctl is-active --quiet bluetooth.service; then
            systemctl stop bluetooth.service
            echo "enabled" > $STATUS_FILE
            logger -t bluetooth-toggle-script "Bluetooth was active and has been disabled before suspend"
        else
            echo "disabled" > $STATUS_FILE
            logger -t bluetooth-toggle-script "Bluetooth was already disabled before suspend"
        fi
        ;;
    post)
        if [ -f $STATUS_FILE ] && grep -q "enabled" $STATUS_FILE; then
            systemctl start bluetooth.service
            logger -t bluetooth-toggle-script "Bluetooth was re-enabled after resume"
        else
            logger -t bluetooth-toggle-script "Bluetooth remains disabled after resume"
        fi
        rm -f $STATUS_FILE
        ;;
esac

Curious if this would work on Fedora as well. I am on Silverblue so I can’t figure out how to get it to work with an immutable /usr/. You can view logs with journalctl -t bluetooth-toggle-script.

Another option is to switch to the LTS kernel. That worked for me (again on Tumbleweed), but I did experience some minor performance degradation in games.

4 Likes

Thanks brother, it worked for me here. Well, it’s not ideal, the ideal would be for the Fedora team to solve the problem in the kernel, but it has already helped a lot. Grateful.

2 Likes

At least for the KDE version of fedora, you can just untick enable bluetooth checkbox in the bottom right corner of the screen. This will disable bluetooth until you enable it again. As for me, I never need it so it will stay disabled forever.

The Fedora team doesn’t solve problems in the kernel – that needs a good bug report to attention of the appropriate developers – but power management also needs vendor support. For that you need a vendor that makes linux (on your model) a priority.

Issue is in MT9222 driver, I don’t think Fedora will fix anything. It also affects other distros like arch, ubuntu, kubuntu, … It’s essentially a kernel driver bug and I’m not sure fedora is willing to do workarounds at this point. All you can do is disable bluetooth via rfkill block bluetooth or via the UI in KDE and wait for a fix from MediaTek team.
https://bbs.archlinux.org/viewtopic.php?id=295916

Sorry - so horribly sorry - to bug you, but this solution doesn’t work for me. What do I do?
I’m not sure the script runs at all - no relevant output with the suggested command ( journalctl -t bluetooth-toggle-script) , and my system still fails to resume from suspend. Did I miss a step?

There is also the other script in the Arch forum, which produces notifications for me about the [bluetooth manager app and its related components for my desktop environment of choice] crashing, but doesn’t actually stop the system from seizing up when trying to resume a session.

Am I doing something wrong?

Not sure, do you see any other relevant messages in journalctrl?

I am on Silverblue so I haven’t actually been using the script since I switched from Tumbleweed. But it’s odd to me that you aren’t seeing messages at all, because it should log something out even if it’s doing nothing.

None of the above solutions made my system wake up reliably so here is my solution. It is using system services, you must create a service file i.e. mt7922-fix.service
under /etc/systemd/system/ with chmod of 644
Here are the contents, just make sure the path to the rfkill binary is correct:

[Unit]
Description=Disable Bluetooth before going to sleep
Before=sleep.target
StopWhenUnneeded=yes

[Service]
Type=oneshot
RemainAfterExit=yes

ExecStart=/usr/sbin/rfkill block bluetooth
ExecStop=/usr/sbin/rfkill unblock bluetooth

[Install]
WantedBy=sleep.target

After that all you still need to do is call sudo systemctl enable mt7922-fix.service

5 Likes

Thanks a lot. I used your solution, except I named it mt7921e-fix.service to match the module name. It is damned great to get back from suspend with no issue, and not to remember about disabling bluetooth.