Black screen in x11 with amd rx 5700 xt in kernel 5.10.x
After starting x11 I get the following error in dmesg, and a black screen:
[ 30.152581] [drm] Mode Validation Warning: Vertical ratio prefetch failed validation.
[ 30.152601] [drm] Mode Validation Warning: Vertical ratio prefetch failed validation.
[ 30.152635] ------------[ cut here ]------------
[ 30.152636] WARNING: CPU: 7 PID: 2007 at drivers/gpu/drm/amd/amdgpu/../display/dc/dcn20/dcn20_resource.c:3238 dcn20_validate_bandwidth_fp+0x8d/0xd0 [amdgpu]
[ 30.152785] Modules linked in: xt_addrtype br_netfilter bridge stp llc overlay nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_mangle iptable_raw iptable_security ip_set nf_tables nfnetlink ip6table_filter ip6_tables iptable_filter cmac bnep sunrpc vfat fat squashfs loop mxm_wmi eeepc_wmi asus_wmi sparse_keymap video wmi_bmof snd_hda_codec_realtek snd_hda_codec_generic rtw88_8822be ledtrig_audio snd_hda_codec_hdmi rtw88_8822b snd_usb_audio rtw88_pci snd_hda_intel snd_intel_dspcfg rtw88_core kvm_amd snd_usbmidi_lib snd_rawmidi kvm mc mac80211 snd_hda_codec irqbypass rapl snd_hwdep snd_hda_core libarc4 snd_seq snd_seq_device snd_pcm snd_timer btusb pcspkr snd btrtl btbcm btintel sp5100_tco soundcore i2c_piix4 k10temp bluetooth cfg80211 joydev ecdh_generic ecc rfkill wmi gpio_amdpt
[ 30.152823] gpio_generic acpi_cpufreq binfmt_misc ip_tables dm_crypt hid_logitech_hidpp hid_logitech_dj amdgpu drm_ttm_helper crct10dif_pclmul crc32_pclmul crc32c_intel ttm iommu_v2 gpu_sched ghash_clmulni_intel drm_kms_helper cec drm ccp igb dca i2c_algo_bit uas nvme usb_storage nvme_core pinctrl_amd fuse
[ 30.152837] CPU: 7 PID: 2007 Comm: Xorg Not tainted 5.11.0-rc6+ #2
[ 30.152839] Hardware name: ASUS System Product Name/ROG CROSSHAIR VII HERO (WI-FI), BIOS 4204 01/28/2021
[ 30.152840] RIP: 0010:dcn20_validate_bandwidth_fp+0x8d/0xd0 [amdgpu]
[ 30.152981] Code: 00 7b 35 22 85 1c 1f 00 00 75 2f 31 d2 f2 0f 11 85 58 26 00 00 48 89 ee 4c 89 e7 e8 8d f6 ff ff 89 c2 22 95 1c 1f 00 00 75 30 <0f> 0b 48 89 9d 58 26 00 00 5b 5d 41 5c c3 75 c9 48 89 9d 58 26 00
[ 30.152983] RSP: 0018:ffffbd504373fad8 EFLAGS: 00010246
[ 30.152985] RAX: 0000000000000000 RBX: 4079400000000000 RCX: 0000000000005896
[ 30.152986] RDX: 0000000000000000 RSI: 2dab8974a086a871 RDI: 000000000002f1a0
[ 30.152987] RBP: ffff9ba4309a0000 R08: 0000000000000000 R09: ffffbd504373f888
[ 30.152988] R10: ffffbd504373f880 R11: ffffffff8ab44408 R12: ffff9ba410840000
[ 30.152989] R13: ffff9ba400cfb800 R14: ffff9ba4309a1ec8 R15: ffff9ba4309a0000
[ 30.152990] FS: 00007fc685f75a80(0000) GS:ffff9bb2febc0000(0000) knlGS:0000000000000000
[ 30.152991] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 30.152992] CR2: 00007fca73615500 CR3: 0000000147e4c000 CR4: 00000000003506e0
[ 30.152993] Call Trace:
[ 30.152997] dcn20_validate_bandwidth+0x29/0x40 [amdgpu]
[ 30.153157] dc_validate_global_state+0x2f2/0x390 [amdgpu]
[ 30.153289] amdgpu_dm_atomic_check+0xb15/0xc30 [amdgpu]
[ 30.153427] drm_atomic_check_only+0x5b9/0x8b0 [drm]
[ 30.153452] drm_atomic_commit+0x13/0x50 [drm]
[ 30.153472] drm_atomic_helper_set_config+0x70/0xb0 [drm_kms_helper]
[ 30.153485] drm_mode_setcrtc+0x1d3/0x6f0 [drm]
[ 30.153503] ? avc_has_extended_perms+0x18d/0x3e0
[ 30.153507] ? drm_mode_getcrtc+0x180/0x180 [drm]
[ 30.153524] drm_ioctl_kernel+0x86/0xd0 [drm]
[ 30.153541] drm_ioctl+0x20f/0x3a0 [drm]
[ 30.153557] ? drm_mode_getcrtc+0x180/0x180 [drm]
[ 30.153574] amdgpu_drm_ioctl+0x49/0x80 [amdgpu]
[ 30.153670] __x64_sys_ioctl+0x83/0xb0
[ 30.153674] do_syscall_64+0x33/0x40
[ 30.153678] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 30.153681] RIP: 0033:0x7fc68650c38b
[ 30.153683] Code: 89 d8 49 8d 3c 1c 48 f7 d8 49 39 c4 72 b5 e8 1c ff ff ff 85 c0 78 ba 4c 89 e0 5b 5d 41 5c c3 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d bd ba 0c 00 f7 d8 64 89 01 48
[ 30.153684] RSP: 002b:00007ffe93fdb5a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[ 30.153686] RAX: ffffffffffffffda RBX: 00007ffe93fdb5e0 RCX: 00007fc68650c38b
[ 30.153687] RDX: 00007ffe93fdb5e0 RSI: 00000000c06864a2 RDI: 000000000000000f
[ 30.153688] RBP: 00000000c06864a2 R08: 0000000000000000 R09: 000056502636a030
[ 30.153689] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
[ 30.153689] R13: 000000000000000f R14: 000056502636a030 R15: 0000000000000000
[ 30.153692] ---[ end trace b12d376d8ac02224 ]---
[ 30.153693] [drm] DC global validation failure: Bandwidth validation failure (BW and Watermark) (13)
[ 30.237001] [drm] Mode Validation Warning: Vertical ratio prefetch failed validation.
[ 30.237015] [drm] Mode Validation Warning: Vertical ratio prefetch failed validation.
[ 30.237055] [drm] DC global validation failure: Bandwidth validation failure (BW and Watermark) (13)
[ 31.387771] process 'docker/tmp/qemu-check417136252/check' started with executable stack
[ 55.682060] Bluetooth: RFCOMM TTY layer initialized
[ 55.682069] Bluetooth: RFCOMM socket layer initialized
[ 55.682104] Bluetooth: RFCOMM ver 1.11
I performed a bisect between 5.9 and 5.10, all other things being equal, and came up with this log:
git bisect start
# good: [bbf5c979011a099af5dc76498918ed7df445635b] Linux 5.9
git bisect good bbf5c979011a099af5dc76498918ed7df445635b
# bad: [2c85ebc57b3e1817b6ce1a6b703928e113a90442] Linux 5.10
git bisect bad 2c85ebc57b3e1817b6ce1a6b703928e113a90442
# bad: [4d0e9df5e43dba52d38b251e3b909df8fa1110be] lib, uaccess: add failure injection to usercopy functions
git bisect bad 4d0e9df5e43dba52d38b251e3b909df8fa1110be
# good: [f888bdf9823c85fe945c4eb3ba353f749dec3856] Merge tag 'devicetree-for-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
git bisect good f888bdf9823c85fe945c4eb3ba353f749dec3856
# bad: [640eee067d9aae0bb98d8706001976ff1affaf00] Merge tag 'drm-misc-next-fixes-2020-10-13' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
git bisect bad 640eee067d9aae0bb98d8706001976ff1affaf00
# good: [877d8c074302c20ac0759d1a4f689c14aada420d] Merge tag 'topic/nouveau-i915-dp-helpers-and-cleanup-2020-08-31-1' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
git bisect good 877d8c074302c20ac0759d1a4f689c14aada420d
# good: [fc88fef916e8971eefeacc62241b7408b7e7939d] Merge tag 'amd-drm-next-5.10-2020-09-18' of git://people.freedesktop.org/~agd5f/linux into drm-next
git bisect good fc88fef916e8971eefeacc62241b7408b7e7939d
# good: [7dd1b884f777beee4c0f3471a327697005118db8] dma-resv: lockdep-prime address_space->i_mmap_rwsem for dma-resv
git bisect good 7dd1b884f777beee4c0f3471a327697005118db8
# good: [2e49520eeec7f003ddff2a6f70a9a7bc0b9f0906] Merge tag 'drm-intel-next-fixes-2020-10-02' of git://anongit.freedesktop.org/drm/drm-intel into drm-next
git bisect good 2e49520eeec7f003ddff2a6f70a9a7bc0b9f0906
# good: [c3d4d45db2fa05462629dbb0857146f5bedfc558] drm/amdgpu: clean up ras sysfs creation (v2)
git bisect good c3d4d45db2fa05462629dbb0857146f5bedfc558
# bad: [39ad082459373facaa255b0791595d018597a164] drm/amdgpu: disable gfxoff temporarily for navy_flounder
git bisect bad 39ad082459373facaa255b0791595d018597a164
# bad: [0ac900bae2c385f169577e1bc5de711c1c648b2b] drm/amd/display: make get_color_space_type() static
git bisect bad 0ac900bae2c385f169577e1bc5de711c1c648b2b
# bad: [ba578afd5a4f6139ffe564f07575875ca51a0f4f] drm/amd/display: disable stream if pixel clock changed with link active
git bisect bad ba578afd5a4f6139ffe564f07575875ca51a0f4f
# bad: [4a3dea8932d3b1199680d2056dd91d31d94d70b7] drm/amd/display: Update NV1x SR latency values
git bisect bad 4a3dea8932d3b1199680d2056dd91d31d94d70b7
# good: [c220ba6f6237ed3d83d547607f42073398571433] drm/amd/pm: fix screen flicker seen on Navi14 with 2*4K monitors
git bisect good c220ba6f6237ed3d83d547607f42073398571433
# first bad commit: [4a3dea8932d3b1199680d2056dd91d31d94d70b7] drm/amd/display: Update NV1x SR latency values
Building HEAD@3aaf0a27ffc29b19a62314edd684b9bc6346f9a8 5.11.0-rc6+ gives me the same result (black screen on displayport in x11) and reverting 4a3dea8932d3b1199680d2056dd91d31d94d70b7 gives me what looks to be perfect functionality.