I’m running KDE Plasma 6.3.4 on Arch Linux, kernel 6.14.2, on BIOS 0307. I am having wake issues after suspending-to-disk & hibernating.
I followed the various framework guides (official) and arch linux guides to setting up and troubleshooting. Most everything works the way I want except this one thing.
Reading the dmesg results a little deeper. It seems zen browser is not playing nice on resume. I did another test where I shut it down and went into hibernation. On wake, it seems to be okay now. So I think this is a GPU issue for sure. Zen browser is based on Firefox. So I assume this must be a more common issue for the AMD laptops.
No issues here. Arch, 6.14.2-arch1 kernel, also using the Zen browser (as a flatpak), running under Hyprland. Everything is more-or-less up-to-date. I always use suspend-then-hibernate and it was definitely hibernated when I just resumed it. Model is FW13 with 7840U CPU.
So after reading the amd issue you linked, I set /sys/class/drm/card1/device/power_dpm_force_performance_level to high. And also installed linux-firmware-git over linux-firmware package. (It’s also recommended on the arch guide, Framework Laptop 13 - ArchWiki).
There was an overall kde packages update when I did a system update, I saw that it included a mesa update. Looks like I’m also on kernel 6.14.3 now.
I can now hibernate with zen browser open (which does run via flatpak), and various other applications. Everything seems to resume without any issues at the moment.
My hibernation is “fixed” for the moment! The fix could be just a system update or the bumping of power_drm_force_performance_level. Either way, I am wondering how long it’ll work for until it breaks again. Seems very finnicky.
Hybrid sleep still breaks the same way as I mentioned before. On resume, black screen with cursor artifact, requires a hard reboot.
I allowed my laptop to sleep on battery last night, and quick maths tell me that my battery drain while sleeping is about 0.6% / hr. This is not perfect, but it’s good enough for me for now. Hopefully that gives others a bench mark to test against.
Lucky you! I did some testing just now to verify how it would fare on Fedora 42, but alas.
It does seem worse when the power_dpm_force_performance_levelis set to auto, but even when I set it to low or high it still soft-crashes all the time. But the most interesting part is that it sometimes looks fine, right up to the moment my mouse interacts with Thunderbird or Firefox. And when it manages to piss off the sway process itself, it never recovers and I need to reboot my system.
But I’ll try to narrow it down more (e.g. hibernate with a minimal set of applications and expand from there). To be continued
To add to this, I reset the value for power_dpm_force_performance_level to auto and tested again. It still works. So I think it’s either the latest version of mesa, linux kernel (6.14.3) or the most recent git commits of linux-firmware` (kernel-firmware / Linux Firmware · GitLab). If you’re adventurous and comfortable with building from source, could be something to try building and installing. Maybe there’s a COPR repo that builds these nightly too.
I have mesa 1:25.0.4-1 installed, I would try to upgrade your mesa if it’s not that version (whether by source or some COPR that has it) before going the linux-firmware route.
I did see this error when running Thunderbird, and it really doesn’t like it.
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: Detect DeviceReset DeviceResetReason::RESET DeviceResetDetectPlace::WR_POST_UPDATE in Parent process (t=11.754) [GFX1-]: Detect DeviceReset DeviceResetReason::RESET DeviceResetDetectPlace::WR_POST_UPDATE in Parent process
Signal Desktop also seems to trigger a crash more often. I’ve only seen a single instance of Firefox triggering it. But all seems to be centered around Flatpaks, but not exclusively.
The list of packages that could be related to this:
amd-gpu-firmware-20250410-1 (in Fedora all *-firmware packages have the same version)
amd-ucode-firmware-20250410-1
flatpak-1.16.0-2
kernel-6.14.2-300
mesa-*-25.0.2-3
mesa-libGLU-9.0.3-6
Great chart! I definitely have terminals (wezterm, yakuake), signal (flatpak), thunderbird (flatpak), and zen browser (flatpak) running while I hibernated (just now) and resumed (just now).
It’s likely something in mesa, linux-firmware or the latest kernel.
I updated the table above, I give up for now, there was a little hope that it might be ‘just’ some of the Flatpaks and/or Electron frameworks, but it’s a mess right now. Where FF performed fine a moment ago, everything is going haywire now. I even had my laptop just randomly turn off right now, so something is really messing up something deep in the GPU
BTW, I checked my BIOS settings again, I do have the iGPU set to Gaming. And I also already upgraded to BIOS 03.07.
I swap to a file on an encrypted btrfs partition, so with LUKS.
I thought I was running without any kernel boot options but now that I’m checking it I see I’m still runing with amdgpu.sg_display=0 which should no longer be necessary.
I’ve never used any of the other options that have been bandied about, I manually stayed on certain kernel versions or a while to avoid the worst problems and just rebooted occasionally when one of them still hit me (such as the one where your fps drops to 1 after you resume a couple of times). But currently I’m just using the newest kernel version again.
I thought I would also chime in here. I am having the same issue, on wake from suspend the laptop shows a black screen with a green/white block for the cursor and nothing else. Switching to another TTY does not work, but it does allow me to reboot with ctrl+alt+del.
Arch Linux
kernel 6.14.3
Mesa is 1:25.0.4-1
linux-firmware is 20250408.c1a774f3-1.
KDE (w/SDDM), setup to suspend + hibernate from encrypted btrfs swap file
Laptop is 13in model with Ryzen 5 7640U.
Programs that are nearly always running for me:
ghostty
firefox
vencord
Attempted fixes
amdgpu.gpu_recovery=1 amdgpu.dcdebugmask=0x10 settings did not work for me.
Same as quaff, setting the performance profile fixes the issue for me:
echo "high" | sudo tee /sys/class/drm/card1/device/power_dpm_force_performance_level
This seems more like a hack, so I hope the root cause is fixed upstream soon.
I have not checked my bios profile setting, maybe that could help.
@Vinz I can confirm that adding amdgpu.sg_display=0 (I didn’t have it defined before, and I just tried it) does not change the situation
@Isaac_Curtis That problem sounds slightly different, for me, suspend(-to-ram) works just fine. My laptop is normally rebooted like once or twice a month, but at least 10 s2ram sessions in between (when moving from home to the office and back)
@quaff interesting, I find it most interesting that it actually reverses the problem instead of s2disk being broken, it’s s2ram
@Mario_Limonciello I ran a test with Linux 6.15.0-0.rc3.327.vanilla.fc42.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Apr 20 22:05:55 UTC 2025 x86_64 GNU/Linux on my laptop for this particular issue (nothing to do with hybrid-sleep, but it does have to do with hibernate) and I know “One swallow does not make Summer”, but hey, it didn’t crash this time around! Whereas all other attempts immediately created a problem after resuming from disk. The second attempt in the same session still resulted in a crash. And after a reboot, it crashed immediately after resuming again…
The logs I was able to find are below:
kernel: amdgpu 0000:c1:00.0: amdgpu: Dumping IP State
kernel: amdgpu 0000:c1:00.0: amdgpu: Dumping IP State Completed
kernel: amdgpu 0000:c1:00.0: amdgpu: [drm] AMDGPU device coredump file has been created
kernel: amdgpu 0000:c1:00.0: amdgpu: [drm] Check your /sys/class/drm/card1/device/devcoredump/data
kernel: gmc_v11_0_process_interrupt: 38 callbacks suppressed
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0b000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x0040113B
kernel: amdgpu 0000:c1:00.0: amdgpu: Faulty UTCL2 client ID: TCP (0x8)
kernel: amdgpu 0000:c1:00.0: amdgpu: MORE_FAULTS: 0x1
kernel: amdgpu 0000:c1:00.0: amdgpu: WALKER_ERROR: 0x5
kernel: amdgpu 0000:c1:00.0: amdgpu: PERMISSION_FAULTS: 0x3
kernel: amdgpu 0000:c1:00.0: amdgpu: MAPPING_ERROR: 0x1
kernel: amdgpu 0000:c1:00.0: amdgpu: RW: 0x0
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0a000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc03000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0d000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0c000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc05000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc04000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc06000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0e000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc07000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 timeout, but soft recovered
kernel: amdgpu 0000:c1:00.0: amdgpu: Dumping IP State
kernel: amdgpu 0000:c1:00.0: amdgpu: Dumping IP State Completed
kernel: amdgpu 0000:c1:00.0: amdgpu: [drm] AMDGPU device coredump file has been created
kernel: amdgpu 0000:c1:00.0: amdgpu: [drm] Check your /sys/class/drm/card1/device/devcoredump/data
kernel: gmc_v11_0_process_interrupt: 45 callbacks suppressed
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0a000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x0040113B
kernel: amdgpu 0000:c1:00.0: amdgpu: Faulty UTCL2 client ID: TCP (0x8)
kernel: amdgpu 0000:c1:00.0: amdgpu: MORE_FAULTS: 0x1
kernel: amdgpu 0000:c1:00.0: amdgpu: WALKER_ERROR: 0x5
kernel: amdgpu 0000:c1:00.0: amdgpu: PERMISSION_FAULTS: 0x3
kernel: amdgpu 0000:c1:00.0: amdgpu: MAPPING_ERROR: 0x1
kernel: amdgpu 0000:c1:00.0: amdgpu: RW: 0x0
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc03000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x00401031
kernel: amdgpu 0000:c1:00.0: amdgpu: Faulty UTCL2 client ID: TCP (0x8)
kernel: amdgpu 0000:c1:00.0: amdgpu: MORE_FAULTS: 0x1
kernel: amdgpu 0000:c1:00.0: amdgpu: WALKER_ERROR: 0x0
kernel: amdgpu 0000:c1:00.0: amdgpu: PERMISSION_FAULTS: 0x3
kernel: amdgpu 0000:c1:00.0: amdgpu: MAPPING_ERROR: 0x0
kernel: amdgpu 0000:c1:00.0: amdgpu: RW: 0x0
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0b000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0d000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0e000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc0c000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc05000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc04000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:24 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc06000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: [gfxhub] page fault (src_id:0 ring:157 vmid:4 pasid:32780)
kernel: amdgpu 0000:c1:00.0: amdgpu: in process spotify pid 4166 thread spotify:cs0 pid 4197)
kernel: amdgpu 0000:c1:00.0: amdgpu: in page starting at address 0x000080010cc07000 from client 10
kernel: amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 timeout, but soft recovered
systemd-logind[2445]: Power key pressed short.
systemd-logind[2445]: Powering off...
The logs mention a AMDGPU device/DRM coredump, but I can’t seem to find it on my system… I do have these available, but I don’t think they will be any good..
I’m not sure if you’re on to something there, it does seem related to (at least) Firefox/Thunderbird and sometimes Electron Apps.
However, not having them running before you hibernate the system does not seem to have a positive impact on the problem..
So here’s what I did:
1st session:
Reboot in a fresh session on the 6.15 kernel
Killed all autostarted apps (Firefox, Signal, Bitwarden etc)
Hibernate
Resume, seems to work fine
Start firefox, immediate GPU hang. It did recover, but I was impatient and pressed the power button before it recovered
2nd session
Killed all apps again
Hibernate
Resume, seems to work fine
Start Chromium (also in Flatpak)
Started the WebGL aquarium with 30k fish
Hibernate, again (with the WebGL running!)
Resume, seemed to work fine
Start Signal Desktop (another app that presented issues in the past), no trouble this time around
Start firefox, immediate GPU hang, but it did recover after a good 30 seconds. But remained unstable.
The system is usable and performs as I would expect, but don’t mention the war Firefox. Everytime I move to the Sway Workspace with FF in it, it just barfs errors, it might recover, it might not.
Sounds like you’ve ruled out the kernel being the thing that fixed my issue.. If you haven’t yet, maybe you can try upgrading mesa to 1:25.0.4-1 next.
By no means am I an expert on all of this, but I THINK, if you can get hibernation to work sometimes, that might mean your hibernation setup is good. and it’s likely something not playing nicely with the GPU (I got those same errors in dmesg, except was about zen browser).