7900XT unusable with slow mouse cursor and low memory clocks with uncomposited X11
Brief summary of the problem:
When starting any gpu dependent application, the mouse cursor starts moving with below one update per second. Even with heavy loads like games the memory clock stays at the minimum in radeontop
and performance is terrible (well below Navi21). dmesg is flooded with:
[drm:dc_dmub_srv_cmd_queue [amdgpu]] *ERROR* Error queuing DMUB command: status=2
[drm:dc_dmub_srv_cmd_queue [amdgpu]] *ERROR* Error waiting for DMUB idle: status=3
- on boot, there is this single call trace in dmesg, which may or may not be related:
call trace
[ 6.607265] WARNING: CPU: 5 PID: 565 at drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:5121 dp_retrieve_lttpr_cap+0x12e/0x1a0 [amdgpu]
[ 6.607400] Modules linked in: mt7921e mt7921_common mt76_connac_lib mt76 btusb btrtl btbcm btintel btmtk mac80211 bluetooth r8169 nls_iso8859_1 realtek mousedev mdio_devres vfat joydev fat ecdh_generic libarc4 libphy intel_rapl_msr intel_rapl_common amdgpu(+) snd_hda_codec_realtek edac_mce_amd snd_hda_codec_generic ledtrig_audio kvm_amd snd_hda_codec_hdmi snd_hda_intel kvm snd_intel_dspcfg snd_intel_sdw_acpi irqbypass snd_hda_codec crct10dif_pclmul crc32_pclmul polyval_clmulni ucsi_ccg snd_hda_core polyval_generic drm_buddy gf128mul snd_hwdep typec_ucsi gpu_sched ghash_clmulni_intel snd_pcm sha512_ssse3 drm_ttm_helper ttm typec aesni_intel snd_timer usbhid crypto_simd drm_display_helper snd wmi_bmof roles cryptd cfg80211 soundcore sp5100_tco cec ccp i2c_piix4 rapl k10temp pcspkr video wmi rfkill gpio_amdpt mac_hid gpio_generic acpi_cpufreq usbip_host usbip_core fuse dm_mod loop bpf_preload ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 crc32c_intel xhci_pci xhci_pci_renesas
[ 6.607426] CPU: 5 PID: 565 Comm: (udev-worker) Not tainted 6.2.11-arch1-1 #1 244f0da55016c37c5dbf2d77817b860f27430e94
[ 6.607428] Hardware name: ASRock B650E PG Riptide WiFi/B650E PG Riptide WiFi, BIOS 1.18 02/22/2023
[ 6.607428] RIP: 0010:dp_retrieve_lttpr_cap+0x12e/0x1a0 [amdgpu]
[ 6.607537] Code: 09 d0 0f b6 54 24 07 48 21 c8 48 c1 e2 38 48 09 d0 48 89 83 88 02 00 00 f6 83 b0 02 00 00 02 74 2a e8 36 ee ff ff 84 c0 75 21 <0f> 0b c6 83 8c 02 00 00 80 b9 80 00 00 00 48 c7 c2 88 75 f2 c1 31
[ 6.607538] RSP: 0018:ffffb460024ff5f8 EFLAGS: 00010246
[ 6.607538] RAX: 0000000000000000 RBX: ffff9f672af66800 RCX: 00ffffffffffffff
[ 6.607539] RDX: 0000000000000000 RSI: ffffb460024ff5f8 RDI: 0000000000000000
[ 6.607539] RBP: 00000000ffffffff R08: 0000000000000008 R09: 0000000000000000
[ 6.607540] R10: 0000000000000002 R11: 0000000000000100 R12: ffff9f67059a5140
[ 6.607540] R13: ffff9f6727d0a800 R14: ffff9f672af66800 R15: ffffb460024ff6fc
[ 6.607540] FS: 00007ff62e458500(0000) GS:ffff9f7618340000(0000) knlGS:0000000000000000
[ 6.607541] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 6.607541] CR2: 00007fc30b35c8f8 CR3: 00000001048be000 CR4: 0000000000750ee0
[ 6.607542] PKRU: 55555554
[ 6.607542] Call Trace:
[ 6.607544] <TASK>
[ 6.607546] retrieve_link_cap+0x79/0xa50 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.607642] ? dc_link_is_dp_sink_present+0xb2/0x120 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.607741] detect_link_and_local_sink+0x8f3/0xbb0 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.607831] dc_link_detect+0x3a/0x490 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.607919] ? dal_gpio_destroy+0x49/0x70 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608037] amdgpu_dm_init.isra.0+0xeff/0x1f20 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608157] ? __pfx_enable_assr+0x10/0x10 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608259] ? __pfx_update_config+0x10/0x10 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608349] dm_hw_init+0x12/0x30 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608440] amdgpu_device_init+0x1d7c/0x2380 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608536] amdgpu_driver_load_kms+0x19/0x190 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608621] amdgpu_pci_probe+0x159/0x400 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608708] local_pci_probe+0x45/0xa0
[ 6.608712] pci_device_probe+0xc1/0x260
[ 6.608713] ? sysfs_do_create_link_sd+0x6e/0xe0
[ 6.608715] really_probe+0x1b9/0x410
[ 6.608717] __driver_probe_device+0x78/0x170
[ 6.608718] driver_probe_device+0x1f/0x90
[ 6.608718] __driver_attach+0xd2/0x1c0
[ 6.608719] ? __pfx___driver_attach+0x10/0x10
[ 6.608720] bus_for_each_dev+0x8b/0xd0
[ 6.608722] bus_add_driver+0x142/0x230
[ 6.608723] driver_register+0x7b/0x120
[ 6.608724] ? __pfx_init_module+0x10/0x10 [amdgpu 4bf0f0ba32599af9afe52003fef0d6936f5f7c08]
[ 6.608807] do_one_initcall+0x5d/0x240
[ 6.608810] do_init_module+0x4a/0x200
[ 6.608813] __do_sys_init_module+0x17f/0x1b0
[ 6.608814] do_syscall_64+0x5f/0x90
[ 6.608817] ? syscall_exit_to_user_mode+0x1b/0x40
[ 6.608819] ? do_syscall_64+0x6b/0x90
[ 6.608820] ? ksys_read+0x6f/0xf0
[ 6.608821] ? syscall_exit_to_user_mode+0x1b/0x40
[ 6.608822] ? do_syscall_64+0x6b/0x90
[ 6.608823] ? syscall_exit_to_user_mode+0x1b/0x40
[ 6.608824] ? do_syscall_64+0x6b/0x90
[ 6.608825] ? exc_page_fault+0x74/0x170
[ 6.608826] entry_SYSCALL_64_after_hwframe+0x72/0xdc
[ 6.608828] RIP: 0033:0x7ff62e721eee
[ 6.608842] Code: 48 8b 0d 85 ee 0c 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 49 89 ca b8 af 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 52 ee 0c 00 f7 d8 64 89 01 48
[ 6.608843] RSP: 002b:00007ffc2eef5228 EFLAGS: 00000246 ORIG_RAX: 00000000000000af
[ 6.608844] RAX: ffffffffffffffda RBX: 000055dfa81e1a50 RCX: 00007ff62e721eee
[ 6.608844] RDX: 00007ff62ec6f343 RSI: 0000000001697e50 RDI: 00007ff62a19b010
[ 6.608844] RBP: 00007ff62ec6f343 R08: 0000000000261000 R09: 0000000000000000
[ 6.608845] R10: 0000000000033e91 R11: 0000000000000246 R12: 0000000000020000
[ 6.608845] R13: 000055dfa8207fe0 R14: 000055dfa81e1a50 R15: 000055dfa81ca6a0
[ 6.608846] </TASK>
I have tried different kernel versions (6.1, 6.2, 6.3rc, drm-next) and different mesa version (23.0 and -git) but no configuration was usable. The same setup works fine with Navi21 instead of Navi31.
The issues do not seem to appear with composited X or KDE wayland.
Hardware description:
- CPU: AMD Ryzen 9 7950X
- GPU: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX] [1002:744c] (rev cc)
- System Memory: 64GB DDR5-4800
- Display(s): Acer VG270UP 2560x1440 144Hz
- Type of Display Connection: DP 1.4
System information:
- Distro name and Version: arch linux
- Kernel version:
6.2.11-arch1-1
, also happens with6.1
and6.3rc
- AMD official driver version: mesa-git and mesa 23.0
How to reproduce the issue:
- use uncomposited X11 (e.g. LXDE with only openbox or KDE with compositing disabled)
- start any game/firefox/steam/quassel/Vulkan-CTS
- performance is terrible
- low memory clocks in radeontop
- mouse cursor is barely moving
- amdgpu spams
[drm:dc_dmub_setup_subvp_dmub_command [amdgpu]] *ERROR* Error waiting for DMUB idle: status=3
in dmesg - quit application
- issues and dmesg spam persist for a while and sometimes indefinitely
Attached files:
Log files (for system lockups / game freezes / crashes)
- Dmesg log: dmesg.txt
- Xorg log: Xorg.0.log
Edited by Georg Lehmann