[Bug 1207837] New: amdgpu: externals displays don't work when booting with plugged in docking station
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 Bug ID: 1207837 Summary: amdgpu: externals displays don't work when booting with plugged in docking station Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: x86-64 OS: openSUSE Tumbleweed Status: NEW Severity: Major Priority: P5 - None Component: Kernel Assignee: kernel-bugs@opensuse.org Reporter: jirib79@gmail.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- Created attachment 864672 --> http://bugzilla.opensuse.org/attachment.cgi?id=864672&action=edit dmesg - one with plugged in, other without 6.1.8-3.gbddbb73-default #1 openSUSE Tumbleweed (unreleased) ec01a7011546b1865e0ba429f47535b0e2fbc5e1, but also usual latest TW kernel - Lenovo T14s gen1 - FW: 0.1.42 (latest for 2023-02-01) - no idea if docking statin FW exists and can be updated When Lenonvo T14s Gen1 boots with plugged in USB-C connecting it with 'ThinkPad Hybrid USB-C with USB-A Dock (40AF)' (??) the externals monitors never work. The OS has to be booted with docking station unplugged, then when plugged again external monitors work. But..., after than when suspend is done, after resume the monitors are not active anymore - although visible in `xrandr' output. Steps to reproduce: - the docking station - external monitors (i have two SAMSUNG LF22T450F, HDMI and DP connected) - boot with usb-c cable between the docking station and Lenovo T14s gen1 plugged in Is this related? ---%>--- # tac /root/dmesg.txt | grep -m1 -A 20 -B 40 'Call Trace:' | tac Feb 01 17:47:35 t14s kernel: usb 5-1.1: SerialNumber: 301000001 Feb 01 17:47:35 t14s kernel: amdgpu: [VBLANK]:crtc:0, vupdate-vrr:0, planes:1 Feb 01 17:47:35 t14s kernel: amdgpu: [VBLANK]:crtc:0, vupdate-vrr:0, planes:1 Feb 01 17:47:35 t14s kernel: ------------[ cut here ]------------ Feb 01 17:47:35 t14s kernel: WARNING: CPU: 6 PID: 161 at drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link.c:3533 update_mst_stream_alloc_table+0x150/0x160 [amdgpu] Feb 01 17:47:35 t14s kernel: Modules linked in: dm_crypt essiv authenc trusted asn1_encoder tee hid_generic usbhid amdgpu crct10dif_pclmul crc32_pclmul polyval_clmulni polyval_generic gf128mul drm_ttm_helper ttm iommu_v2 ghash_clmulni_intel gpu_sched ehci_pci xhci_pci sha512_ssse3 rtsx_pci_sdmmc xhci_pci_renesas drm_buddy mmc_core drm_display_helper xhci_hcd ehci_hcd aesni_intel ucsi_acpi nvme crypto_simd typec_ucsi cryptd cec usbcore roles nvme_core ccp rtsx_pci sp5100_tco rc_core typec video battery wmi serio_raw btrfs blake2b_generic libcrc32c crc32c_intel xor raid6_pq dm_mirror dm_region_hash dm_log sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua ledtrig_timer msr efivarfs Feb 01 17:47:35 t14s kernel: CPU: 6 PID: 161 Comm: kworker/6:1 Tainted: G W 6.1.8-3.gbddbb73-default #1 openSUSE Tumbleweed (unreleased) ec01a7011546b1865e0ba429f47535b0e2fbc5e1 Feb 01 17:47:35 t14s kernel: Hardware name: LENOVO 20UJS2B901/20UJS2B901, BIOS R1CET73W(1.42 ) 12/09/2022 Feb 01 17:47:35 t14s kernel: Workqueue: events_long drm_dp_mst_link_probe_work [drm_display_helper] Feb 01 17:47:35 t14s kernel: RIP: 0010:update_mst_stream_alloc_table+0x150/0x160 [amdgpu] Feb 01 17:47:35 t14s kernel: Code: 00 00 75 2d 48 81 c4 98 00 00 00 5b 5d 41 5c e9 16 da ad d5 41 0f b7 40 04 4d 89 19 49 89 59 08 66 41 89 41 10 e9 71 ff ff ff <0f> 0b e9 fe fe ff ff e8 c4 01 83 d5 0f 1f 40 00 0f 1f 44 00 00 55 Feb 01 17:47:35 t14s kernel: RSP: 0018:ffffb7ce0073f678 EFLAGS: 00010202 Feb 01 17:47:35 t14s kernel: RAX: 0000000000000002 RBX: 0000000000000000 RCX: 0000000000000000 Feb 01 17:47:35 t14s kernel: RDX: 0000000000000000 RSI: ffffb7ce0073f678 RDI: ffffb7ce0073f708 Feb 01 17:47:35 t14s kernel: RBP: ffff9826d5e00aa0 R08: ffffb7ce0073f738 R09: ffffb7ce0073f480 Feb 01 17:47:35 t14s kernel: R10: ffff9826c7edb000 R11: ffff9826dd3037e0 R12: 0000000000000002 Feb 01 17:47:35 t14s kernel: R13: ffff9826d8701000 R14: ffffffffc188d8e0 R15: 0000000000000000 Feb 01 17:47:35 t14s kernel: FS: 0000000000000000(0000) GS:ffff9829bf980000(0000) knlGS:0000000000000000 Feb 01 17:47:35 t14s kernel: CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 Feb 01 17:47:35 t14s kernel: CR2: 00007effc2b12440 CR3: 0000000295010000 CR4: 0000000000350ee0 Feb 01 17:47:35 t14s kernel: Call Trace: Feb 01 17:47:35 t14s kernel: <TASK> Feb 01 17:47:35 t14s kernel: dc_link_allocate_mst_payload+0x95/0x290 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: core_link_enable_stream+0x7cc/0x980 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: ? optc1_set_drr+0x136/0x1e0 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: dce110_apply_ctx_to_hw+0x652/0x700 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: dc_commit_state_no_check+0x38c/0xc90 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: dc_commit_state+0x92/0x110 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: amdgpu_dm_atomic_commit_tail+0x4a0/0x2a80 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: ? get_page_from_freelist+0x4d9/0x1590 Feb 01 17:47:35 t14s kernel: ? dcn21_fast_validate_bw+0x3be/0x490 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: ? dcn21_validate_bandwidth_fp+0x101/0x6d0 [amdgpu 94e1b47238533e7ef69a131fcfbdc0d3832eb584] Feb 01 17:47:35 t14s kernel: ? __alloc_pages+0xec/0x240 Feb 01 17:47:35 t14s kernel: ? __get_random_u32_below+0x12/0x60 Feb 01 17:47:35 t14s kernel: ? allocate_slab+0x255/0x490 Feb 01 17:47:35 t14s kernel: ? drm_atomic_helper_setup_commit+0x4c7/0x840 Feb 01 17:47:35 t14s kernel: ? dma_resv_iter_first_unlocked+0x62/0x70 Feb 01 17:47:35 t14s kernel: ? dma_resv_get_fences+0x52/0x210 Feb 01 17:47:35 t14s kernel: ? wait_for_completion_timeout+0x112/0x140 Feb 01 17:47:35 t14s kernel: commit_tail+0x94/0x130 Feb 01 17:47:35 t14s kernel: drm_atomic_helper_commit+0x112/0x140 Feb 01 17:47:35 t14s kernel: drm_atomic_commit+0x77/0xf0 Feb 01 17:47:35 t14s kernel: ? drm_plane_get_damage_clips.cold+0x1c/0x1c Feb 01 17:47:35 t14s kernel: drm_client_modeset_commit_atomic+0x1e7/0x230 Feb 01 17:47:35 t14s kernel: drm_client_modeset_commit_locked+0x56/0x160 Feb 01 17:47:35 t14s kernel: drm_client_modeset_commit+0x21/0x40 Feb 01 17:47:35 t14s kernel: drm_fb_helper_set_par+0x9e/0xe0 Feb 01 17:47:35 t14s kernel: drm_fb_helper_hotplug_event+0x9f/0xe0 Feb 01 17:47:35 t14s kernel: drm_kms_helper_hotplug_event+0x26/0x30 Feb 01 17:47:35 t14s kernel: process_one_work+0x20f/0x3d0 Feb 01 17:47:35 t14s kernel: worker_thread+0x4a/0x3b0 Feb 01 17:47:35 t14s kernel: ? process_one_work+0x3d0/0x3d0 Feb 01 17:47:35 t14s kernel: kthread+0xda/0x100 Feb 01 17:47:35 t14s kernel: ? kthread_complete_and_exit+0x20/0x20 Feb 01 17:47:35 t14s kernel: ret_from_fork+0x22/0x30 Feb 01 17:47:35 t14s kernel: </TASK> Feb 01 17:47:35 t14s kernel: ---[ end trace 0000000000000000 ]--- Feb 01 17:47:35 t14s kernel: amdgpu: [VBLANK]:crtc:0, vupdate-vrr:0, planes:1 Feb 01 17:47:35 t14s kernel: amdgpu: [VBLANK]:crtc:0, vupdate-vrr:0, planes:1 Feb 01 17:47:36 t14s kernel: [HDCP_TOP]: Feb 01 17:47:36 t14s kernel: [HDCP_TOP]:[Link 0] mod_hdcp_add_display display 4 ---%<--- -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c1 Michiel Janssens <michiel@nexigon.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |michiel@nexigon.net --- Comment #1 from Michiel Janssens <michiel@nexigon.net> --- Hi, this looks like this issue, reported upstream: https://gitlab.freedesktop.org/drm/amd/-/issues/2171 Should be fixed in kernel 6.1.9 that should land in TW soon. If the issue still remains, you could consider reporting it there as a separate issue as stated by one of the devs: https://gitlab.freedesktop.org/drm/amd/-/issues/2171#note_1754817 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c5 David Anes <david.anes@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |david.anes@suse.com --- Comment #5 from David Anes <david.anes@suse.com> --- Same here, I get the same error. The last working kernel was 6.0.x but since the jump to 6.1.x monitors do not wake up after suspend (or during startup) and/or act strangely. I noticed the following issues: * During BIOS POST, only the laptop monitor is used (previously, all other monitors were displaying the bootup process). * After waking up from suspend, external monitors do not wake up (as Jiri mentions). * Even when the monitors work (using the workaround Jiri mentions, plugin the dock after the boot and not suspending the machine) the monitors are mixed together (for example, I try to rotate the image in one monitor and another one is rotated instead, like the monitors are mixed together). Today I wanted to revert back to 6.0.x kernel, but unfortunately it's not there any more in GRUB's menu (seems it's been purged by the kernel-purge-service). As it's not available, I tried the one from Takashi's home at https://download.opensuse.org/repositories/home:/tiwai:/kernel:/6.0/standard... but I cannot boot that kernel. Previously I was able to boot into 6.0 and everything was working, but I'm not sure how to know the changes that are relevant to do a bisect neither how to make the latest version for kernel 6.0 kernel from Takashi's repo. Any hint? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c6 --- Comment #6 from Takashi Iwai <tiwai@suse.com> --- Try to check whether Secure Boot is set on BIOS. You'll need to turn it off for booting with the unofficial kernels. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c15 Frerk Meyer <frerk.meyer@gmx.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |frerk.meyer@gmx.de --- Comment #15 from Frerk Meyer <frerk.meyer@gmx.de> --- openSUSE Tumbleweed: Kernel 6.2.0-1-default no external monitor over usb-c docking station whatever. Kernel 6.1.12-1-default works with external monitor over usb-c docking station. dmesg of 6.2.0-1-default shows stack trace [ 14.255598] RIP: 0010:fill_dc_mst_payload_table_from_drm+0x99/0x140 [amdgpu] [ 14.255791] Code: c1 eb 0b 83 c2 01 48 83 c1 18 39 d6 74 1c 40 38 39 75 f0 0f b7 3d d5 2d 5f 00 48 63 ca 48 8d 0c 49 66 89 7c cc 28 39 d6 75 22 <0f> 0b eb 1e 0f b7 5a 0c 0f b7 05 b6 2d 5f 00 48 8d 0c 76 8a 42 09 [ 14.255792] RSP: 0018:ffffa87a8058bcb0 EFLAGS: 00010246 [ 14.255793] RAX: ffffa87a8058bcd8 RBX: 0000000000000000 RCX: 0000000000000000 [ 14.255794] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffa87a8058bd58 [ 14.255795] RBP: ffff926f48c5c800 R08: ffffa87a8058bde4 R09: 0000000000000000 [ 14.255795] R10: 0000000000000002 R11: 0000000000000001 R12: ffffa87a8058bde4 [ 14.255796] R13: ffff926f8f94e280 R14: ffff926f4a95e568 R15: ffff926f6006a5a0 [ 14.255796] FS: 0000000000000000(0000) GS:ffff9271dff00000(0000) knlGS:0000000000000000 [ 14.255797] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 14.255798] CR2: 00007f6173227c9e CR3: 0000000172210000 CR4: 0000000000750ee0 [ 14.255799] PKRU: 55555554 [ 14.255799] Call Trace: [ 14.255801] <TASK> [ 14.255804] dm_helpers_dp_mst_write_payload_allocation_table+0x79/0xa0 [amdgpu e61587d8af537d9c5056b5f2b53d40d230aba0a5] [ 14.255981] core_link_disable_stream+0x2d0/0x540 [amdgpu e61587d8af537d9c5056b5f2b53d40d230aba0a5] [ 14.256154] dc_link_dp_handle_link_loss+0x12e/0x190 [amdgpu e61587d8af537d9c5056b5f2b53d40d230aba0a5] [ 14.256316] dm_handle_hpd_rx_offload_work+0x12b/0x160 [amdgpu e61587d8af537d9c5056b5f2b53d40d230aba0a5] [ 14.256494] process_one_work+0x20f/0x3d0 [ 14.256498] worker_thread+0x4a/0x3b0 [ 14.256500] ? __pfx_worker_thread+0x10/0x10 [ 14.256501] kthread+0xda/0x100 [ 14.256503] ? __pfx_kthread+0x10/0x10 [ 14.256504] ret_from_fork+0x2c/0x50 [ 14.256508] </TASK> [ 14.256509] ---[ end trace 0000000000000000 ]--- See attachment dmesg of both kernel versions. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c16 --- Comment #16 from Frerk Meyer <frerk.meyer@gmx.de> --- Created attachment 865263 --> http://bugzilla.opensuse.org/attachment.cgi?id=865263&action=edit dmesg 6.2.0-1-default with stack trace from turning on external monitor -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c17 --- Comment #17 from Frerk Meyer <frerk.meyer@gmx.de> --- Created attachment 865264 --> http://bugzilla.opensuse.org/attachment.cgi?id=865264&action=edit dmesg 6.1.12-1-default from turning on external monitor to compare with -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c18 --- Comment #18 from Frerk Meyer <frerk.meyer@gmx.de> --- Today it didn't work with kernel 6.1 and after several desperate attempts it did work on kernel 6.2. So: - it isn't a deterministic bug - it's build into kernel 6.1 and 6.2 - it has nothing to do with hibernate or suspend (in my case) - it worked with kernel 6.0.x - it seems to have to do with https://gitlab.freedesktop.org/drm/amd/-/issues/2297 HTH, Frerk Meyer -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c19 --- Comment #19 from Frerk Meyer <frerk.meyer@gmx.de> --- With kernel Linux version 6.2.1-1-default it works again deterministic. I guess it helps to turn the external monitor on after booting, have to try more. I'll attach dmesg output. Main line is after turning on the external monitor, attached via USB-C Hub (from HP) and Displayport: [ 23.978496] [drm] DP Alt mode state on HPD: 1 [ 24.108697] [drm] DM_MST: starting TM on aconnector: 000000008746628a [id: 90] [ 24.435007] [drm] Downstream port present 1, type 0 [ 25.367461] [drm] crtc[0] needs mode_changed So it seems to be fixed with 6.2.1. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1207837 http://bugzilla.opensuse.org/show_bug.cgi?id=1207837#c20 --- Comment #20 from Frerk Meyer <frerk.meyer@gmx.de> --- Created attachment 865458 --> http://bugzilla.opensuse.org/attachment.cgi?id=865458&action=edit dmesg 6.2.1-1-default success with turning on external monitor and connecting -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com