Amdgpu crashes on usb-c dock?


Which Linux distro are you using?
fedora

Which release version?
41/42

Which kernel are you using?
6.14.6-300

Which BIOS version are you using?
3.09

Which Framework Laptop 13 model are you using?
AMD Ryzen™ 7040 Series

i had a a similar issue a couple of month ago - my desktop display (connected via an anker usb-c dock with pd) kept turning off, then on again, basically “losing signal” for a second and then coming back.

i tested all cables, switched every component in the loop and tried several combinations of usb-c cables, hdmi cable, even different docks. nothing helped. i then found some kernel logs complaining about amdgpu timeouts. i then updated the firmware to 3.07, and this resolved the issue.

yesterday, i did the usual dnf upgrade, and the first thing i noticed that my laptop was no longer going to sleep normally. if actively switched to “standby”, it would turn back on after a few seconds. i also noticed occasional glitches on the external display (again, briefly disappearing and then coming back.

today, i did a dist upgrade to f42, along with a BIOS upgrade to 3.09, but instead of solving the issue, it got much, much worse, with the laptop randomly going to sleep, plus the display disconnects.

i currently have the display connected directly via HDMI:

     ---- hinge -----------------
[  ]|      keyboard             |[ HDMI ]
[  ]|                           |[ USB PD ]

and it seems stable. but this is not really a solution, as i need to be mobile, so i really want to have a single cable to deal with there.

kernel logs says:

amdgpu 0000:c1:00.0: [drm] REG_WAIT timeout 1us * 100 tries - dcn31_program_compbuf_size line:142

what can i do to fix this? how does this happen?

.rm

I have the same issue but with a different dock/hub ( OWC Thunderbolt Hub Docking Station, Grey/Black, Thunderbolt 4, USB-A: Amazon.de: Computer & Accessories ). My Display turns off for a second and then reappears several times a day. I had the same display issue with my old i5 11357 G7 mainboard, so I thought it is a problem with the dock.

Also several times now the laptop just completely froze with some visual artifacts before the freeze. I was forced to hold the power button to reboot it.

Specs:

Summary
OS: Arch Linux x86_64
Host: Laptop 13 (AMD Ryzen 7040Series) (A7)
Kernel: Linux 6.15.8-arch1-2
Uptime: 10 mins
Packages: 697 (pacman)
Shell: zsh 5.9
Display (27GL850): 2560x1440 @ 120 Hz in 27" [External]
WM: Hyprland 0.50.1 (Wayland)
Theme: Breeze-Dark [GTK2/3]
Icons: Papirus-Dark [GTK2/3]
Font: Cantarell (11pt) [GTK2], Adwaita Sans (11pt) [GTK3]
Cursor: XCursor-Pro-Hyprcursor-Dark (28px)
Terminal: foot 1.23.1
Terminal Font: JetBrainsMonoNerdFont (11pt)
CPU: AMD Ryzen 7 7840U (16) @ 5.13 GHz
GPU: AMD Radeon 780M Graphics [Integrated]
Memory: 2.42 GiB / 27.21 GiB (9%)
Swap: Disabled
Disk (/): 21.56 GiB / 456.38 GiB (5%) - ext4
Local IP (eth0): 192.168.178.153/24
Battery (Framewo): 60% [Charging, AC Connected]
Locale: en_US.UTF-8

journalctl is rather clean except the amd gpu warning right before the freeze:

Summary
Aug 02 14:17:02 framework kernel: amdgpu 0000:c1:00.0: [drm] REG_WAIT timeout 1us * 100 tries - dcn31_program_compbuf_size line:142
Aug 02 14:17:02 framework kernel: ------------[ cut here ]------------
Aug 02 14:17:02 framework kernel: WARNING: CPU: 10 PID: 1967 at drivers/gpu/drm/amd/amdgpu/../display/dc/hubbub/dcn31/dcn31_hubbub.c:151 dcn31_program_compbuf_size+0xd0/0x220 [amdgpu]
Aug 02 14:17:02 framework kernel: Modules linked in: snd_seq_dummy snd_hrtimer snd_seq vfat fat snd_sof_amd_acp70 snd_sof_amd_acp63 snd_sof_amd_vangogh snd_sof_amd_rembrandt snd_sof_amd_renoir hid_sensor_als snd_sof_amd_acp hid_sensor_trigger snd_sof_pci industrialio_triggered_buf>
Aug 02 14:17:02 framework kernel:  btusb snd_seq_device cdc_mbim snd_pci_acp6x snd_hwdep cros_ec_dev btrtl snd_pci_acp5x spd5118 cdc_wdm snd_pcm btintel kvm snd_rn_pci_acp3x cdc_ncm sp5100_tco snd_timer cfg80211 btbcm snd_acp_config ucsi_acpi cdc_ether btmtk snd_soc_acpi snd i2c_p>
Aug 02 14:17:02 framework kernel: CPU: 10 UID: 1000 PID: 1967 Comm: hyprland Not tainted 6.15.8-arch1-2 #1 PREEMPT(full)  7b804d8109e142013e8263acc2bd1ff1b0003d09
Aug 02 14:17:02 framework kernel: Hardware name: Framework Laptop 13 (AMD Ryzen 7040Series)/FRANMDCP07, BIOS 03.09 04/22/2025
Aug 02 14:17:02 framework kernel: RIP: 0010:dcn31_program_compbuf_size+0xd0/0x220 [amdgpu]
Aug 02 14:17:02 framework kernel: Code: 00 48 8b 43 28 8b 88 d8 01 00 00 48 8b 43 20 0f b6 50 76 48 8b 43 18 8b b0 14 01 00 00 e8 38 7d 0e 00 85 c0 0f 85 32 01 00 00 <0f> 0b 48 8b 44 24 08 65 48 2b 05 39 4a 93 dd 0f 85 35 01 00 00 48
Aug 02 14:17:02 framework kernel: RSP: 0018:ffffd3918550b6d0 EFLAGS: 00010202
Aug 02 14:17:02 framework kernel: RAX: 0000000000000001 RBX: ffff8ea0c0d91800 RCX: 000000000000001f
Aug 02 14:17:02 framework kernel: RDX: ffffd3918428e5e8 RSI: 000000000000397a RDI: ffff8ea0d4100000
Aug 02 14:17:02 framework kernel: RBP: 0000000000000004 R08: ffffd3918550b6d4 R09: 0000000000000019
Aug 02 14:17:02 framework kernel: R10: 0000000000000064 R11: ffffd3918550b3d0 R12: ffff8ea0f8a00000
Aug 02 14:17:02 framework kernel: R13: ffff8ea0d4c00000 R14: ffff8ea0c0d91800 R15: 0000000000000004
Aug 02 14:17:02 framework kernel: FS:  00007fd58ca81b80(0000) GS:ffff8ea7a37ac000(0000) knlGS:0000000000000000
Aug 02 14:17:02 framework kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Aug 02 14:17:02 framework kernel: CR2: 00007fd55000e020 CR3: 0000000110c04000 CR4: 0000000000f50ef0
Aug 02 14:17:02 framework kernel: PKRU: 55555554
Aug 02 14:17:02 framework kernel: Call Trace:
Aug 02 14:17:02 framework kernel:  <TASK>
Aug 02 14:17:02 framework kernel:  dcn20_optimize_bandwidth+0xe4/0x220 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  dc_commit_state_no_check+0xc0b/0xe50 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  dc_commit_streams+0x363/0x480 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  amdgpu_dm_atomic_commit_tail+0x697/0x3860 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  ? dc_fpu_end+0x95/0xc0 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? amdgpu_dm_atomic_check+0x1857/0x1970 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? __kmalloc_cache_noprof+0x135/0x410
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? wait_for_completion_timeout+0x14e/0x1a0
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? __wait_for_common+0x17f/0x1d0
Aug 02 14:17:02 framework kernel:  commit_tail+0x9e/0x130
Aug 02 14:17:02 framework kernel:  drm_atomic_helper_commit+0x13c/0x180
Aug 02 14:17:02 framework kernel:  drm_atomic_commit+0xae/0xe0
Aug 02 14:17:02 framework kernel:  ? __pfx___drm_printfn_info+0x10/0x10
Aug 02 14:17:02 framework kernel:  drm_mode_atomic_ioctl+0xa82/0xcf0
Aug 02 14:17:02 framework kernel:  ? __pfx_drm_mode_atomic_ioctl+0x10/0x10
Aug 02 14:17:02 framework kernel:  drm_ioctl_kernel+0xab/0x100
Aug 02 14:17:02 framework kernel:  drm_ioctl+0x29b/0x530
Aug 02 14:17:02 framework kernel:  ? __pfx_drm_mode_atomic_ioctl+0x10/0x10
Aug 02 14:17:02 framework kernel:  amdgpu_drm_ioctl+0x4a/0x80 [amdgpu 5e148c061a228d8a854ec0bb8201ab8e68ec2b2d]
Aug 02 14:17:02 framework kernel:  __x64_sys_ioctl+0x94/0xc0
Aug 02 14:17:02 framework kernel:  do_syscall_64+0x7b/0x810
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? srso_alias_return_thunk+0x5/0xfbef5
Aug 02 14:17:02 framework kernel:  ? irqentry_exit_to_user_mode+0x2c/0x1b0
Aug 02 14:17:02 framework kernel:  entry_SYSCALL_64_after_hwframe+0x76/0x7e
Aug 02 14:17:02 framework kernel: RIP: 0033:0x7fd58eb1678d
Aug 02 14:17:02 framework kernel: Code: 04 25 28 00 00 00 48 89 45 c8 31 c0 48 8d 45 10 c7 45 b0 10 00 00 00 48 89 45 b8 48 8d 45 d0 48 89 45 c0 b8 10 00 00 00 0f 05 <89> c2 3d 00 f0 ff ff 77 1a 48 8b 45 c8 64 48 2b 04 25 28 00 00 00
Aug 02 14:17:02 framework kernel: RSP: 002b:00007ffe3f0b6b80 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
Aug 02 14:17:02 framework kernel: RAX: ffffffffffffffda RBX: 0000559a6b30c5f0 RCX: 00007fd58eb1678d
Aug 02 14:17:02 framework kernel: RDX: 00007ffe3f0b6c20 RSI: 00000000c03864bc RDI: 0000000000000023
Aug 02 14:17:02 framework kernel: RBP: 00007ffe3f0b6bd0 R08: 0000000000000003 R09: 0000559a6d30efd0
Aug 02 14:17:02 framework kernel: R10: 0000000000000000 R11: 0000000000000246 R12: 00007ffe3f0b6c20
Aug 02 14:17:02 framework kernel: R13: 00000000c03864bc R14: 0000000000000023 R15: 0000559a6d30efd0
Aug 02 14:17:02 framework kernel:  </TASK>
Aug 02 14:17:02 framework kernel: ---[ end trace 0000000000000000 ]---

I’ve seen this message (or something similar) very often, but almost never in connection with a freeze.

Maybe someone has a way to debug the display issue as I’ve no idea how to even start debugging such a bug.

Greetings,

vault

So the right way to solve this is to first isolate what caused it. Roll back kernel versions to one that doesn’t have the issue. If it’s not tied to kernels, roll back Linux firmware.

If it’s kernel - the ideal approach is to bisect.

Once you know what is causing it raise an issue at AMD DRM gitlab.

That being said this being a 7040; maybe this helps if you are using monitors requiring DSC.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.