Bug 102323 - [DC] System crashes when woken up from S3 sleep while HDMI display is switched off
Summary: [DC] System crashes when woken up from S3 sleep while HDMI display is switche...
Status: RESOLVED MOVED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/AMDgpu (show other bugs)
Version: DRI git
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-20 23:20 UTC by dwagner
Modified: 2019-11-19 08:22 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Draft fix (1.99 KB, patch)
2017-08-22 14:57 UTC, Harry Wentland
no flags Details | Splinter Review

Description dwagner 2017-08-20 23:20:17 UTC
My system invariably crashes (no picture, no reaction to any input, not even from a remote ssh session) when I do the following:

1. echo mem >/sys/power/state

2. Wait until the blinking power LED of the system indicates it is S3-sleeping

3. Switch off the one single HDMI display connected to the GPU. (Make sure it is actually off in a way that powers down the HDMI input - some displays have "soft-off" modes that keep HDMI inputs powered.)

4. Press some key to make the system wake up from S3-sleep (while the display is still off).

At this point, the system is inresponsive. If I power up the display, it reports no HDMI input signal (so not just a black image, actually no signal).

My system is using an RX 460 GPU to drive one single HDMI display.

To narrow down the possible causes, I did not start X11 at all after freshly rebooting, and I use "video=DP-1:d video=DVI-D-1:d video=HDMI-A-1:1024x768" on the kernel command line to make sure that really just that one connected display is driven, at a harmless 1024x768 mode.
(The symptom also occurs when using X11 other resolutions.)

I am running a kernel compiled from https://cgit.freedesktop.org/~agd5f/linux/log/?h=amd-staging-drm-next as of "commit 94097b0f7f1bfa54b3b1f8b0d74bbd271a0564e4" (so the very latest amdgpu version as of today).

Notice that my system does not crash if I wake it up from S3 sleep after turning on the HDMI display.


Unluckily, above described 100% reproducable crash scenario does not produce any error log / dmesg messages I could cite here.

However, I can cite some scary dmesg output that occurs if instead of sending the system to S3 sleep I just:

1. Switch off the one single HDMI display connected to the GPU.

2. Press Ctrl-Alt-F2 then Ctrl-Alt-F3 to cycle through some virtual consoles (notice: again no X11 involved, here).

This action causes dmesg output like this:

[ 3196.798430] [drm] link=1, dc_sink_in=          (null) is now Disconnected
[ 3196.798433] [drm] DCHPD: connector_id=1: Old sink=ffff8807f6804c00 New sink=          (null)
[ 3196.798475] ------------[ cut here ]------------
[ 3196.798491] WARNING: CPU: 0 PID: 89 at drivers/gpu/drm/drm_mode_object.c:237 drm_object_property_set_value+0x5d/0x70 [drm]
[ 3196.798492] Modules linked in: blowfish_generic blowfish_x86_64 blowfish_common des3_ede_x86_64 des_generic cast5_avx_x86_64 cast5_generic cast_common cbc twofish_generic twofish_avx_x86_64 twofish_x86_64_3way twofish_x86_64 twofish_common serpent_avx2 serpent_avx_x86_64 serpent_sse2_x86_64 serpent_generic lrw gf128mul ablk_helper xts arc4 md4 nls_utf8 cifs ccm dns_resolver fscache ipt_REJECT nf_reject_ipv4 nf_log_ipv4 nf_log_common xt_LOG xt_tcpudp xt_owner cmac xt_mark iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack bnep iptable_mangle cpufreq_ondemand msr iptable_filter btusb snd_hda_codec_realtek btrtl btbcm snd_hda_codec_generic btintel bluetooth snd_hda_codec_hdmi nls_iso8859_1 snd_hda_intel nls_cp437 snd_hda_codec ecdh_generic vfat rfkill fat igb snd_hda_core crc16
[ 3196.798519]  ptp pps_core edac_mce_amd dca snd_hwdep kvm_amd snd_pcm snd_timer kvm snd soundcore sp5100_tco irqbypass evdev i2c_piix4 shpchp input_leds pcspkr led_class tpm_tis tpm_tis_core tpm 8250_dw button acpi_cpufreq sch_fq_codel usbip_host usbip_core sg exfat(O) it87(O) hwmon_vid ip_tables x_tables algif_skcipher af_alg sd_mod uas usb_storage serio_raw atkbd libps2 crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc aesni_intel aes_x86_64 crypto_simd glue_helper cryptd ccp rng_core ahci xhci_pci libahci xhci_hcd libata usbcore scsi_mod usb_common i8042 serio amdgpu i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm xfs libcrc32c crc32c_generic crc32c_intel dm_crypt dm_mod dax nvme nvme_core i2c_dev
[ 3196.798554] CPU: 0 PID: 89 Comm: kworker/0:1 Tainted: G        W  O    4.13.0-rc5-amd+ #3
[ 3196.798555] Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 0807 07/19/2017
[ 3196.798612] Workqueue: events dm_irq_work_func [amdgpu]
[ 3196.798613] task: ffff8807fad82940 task.stack: ffffc9000354c000
[ 3196.798626] RIP: 0010:drm_object_property_set_value+0x5d/0x70 [drm]
[ 3196.798627] RSP: 0018:ffffc9000354fdb8 EFLAGS: 00010246
[ 3196.798629] RAX: ffffffffa04b4c80 RBX: ffff8807f5896000 RCX: ffff8807f5896148
[ 3196.798629] RDX: 0000000000000000 RSI: ffff8807fa8bf180 RDI: ffff8807f5896028
[ 3196.798630] RBP: ffffc9000354fdb8 R08: 0000000000000009 R09: 0000000000000004
[ 3196.798631] R10: ffffea001e483800 R11: 0000000000000001 R12: ffff8807f5896028
[ 3196.798632] R13: ffff8807f71361f8 R14: ffff88081ec19080 R15: ffff8807fad67800
[ 3196.798633] FS:  0000000000000000(0000) GS:ffff88081ec00000(0000) knlGS:0000000000000000
[ 3196.798634] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 3196.798635] CR2: 000000e00cc5d1c0 CR3: 00000007f80ad000 CR4: 00000000003406f0
[ 3196.798636] Call Trace:
[ 3196.798691]  amdgpu_dm_remove_sink_from_freesync_module+0x82/0xb0 [amdgpu]
[ 3196.798743]  amdgpu_dm_update_connector_after_detect+0x197/0x200 [amdgpu]
[ 3196.798794]  handle_hpd_irq+0x4c/0x90 [amdgpu]
[ 3196.798845]  dm_irq_work_func+0x57/0x70 [amdgpu]
[ 3196.798848]  process_one_work+0x1db/0x3e0
[ 3196.798850]  worker_thread+0x47/0x3e0
[ 3196.798853]  kthread+0x125/0x140
[ 3196.798854]  ? process_one_work+0x3e0/0x3e0
[ 3196.798856]  ? kthread_create_on_node+0x70/0x70
[ 3196.798860]  ret_from_fork+0x22/0x30
[ 3196.798861] Code: 71 08 74 2b 83 ef 01 b8 01 00 00 00 48 83 c7 01 eb 0a 48 83 c0 01 48 39 34 c1 74 16 48 39 f8 4c 63 c0 75 ee b8 ea ff ff ff 5d c3 <0f> ff eb c0 45 31 c0 4a 89 94 c1 c8 00 00 00 31 c0 5d c3 0f 1f 
[ 3196.798888] ---[ end trace dfc393643d376a34 ]---
[ 3196.798995] [drm] Atomic commit: RESET. crtc id 0:[ffff8807f6382000]
[ 3196.798997] [drm] dc_commit_context: 0 streams
[ 3222.733648] [drm] [Detect]   [HDMIA][ConnIdx:1] LG TV: [Block 0] 00 FF FF FF FF FF FF 00 1E 6D 01 00 01 01 01 01 01 19 01 03 80 A0 5A 78 0A EE 91 A3 54 4C 99 26 0F 50 54 A1 08 00 31 40 45 40 61 40 71 40 81 80 01 01 01 01 01 01 08 E8 00 30 F2 70 5A 80 B0 58 8A 00 40 84 63 00 00 1E 02 3A 80 18 71 38 2D 40 58 2C 45 00 40 84 63 00 00 1E 00 00 00 FD 00 3A 3E 1E 88 3C 00 0A 20 20 20 20 20 20 00 00 00 FC 00 4C 47 20 54 56 0A 20 20 20 20 20 20 20 01 A0 ^
[ 3222.733664] [drm] [Detect]   [HDMIA][ConnIdx:1] LG TV: [Block 1] 02 03 55 F1 58 10 9F 04 13 05 14 03 02 12 20 21 22 15 01 60 61 5D 5E 5F 65 66 62 63 64 29 3D 06 C0 15 07 50 09 57 07 7C 03 0C 00 20 00 B8 3C 20 C0 8E 01 02 03 04 01 4F 3F FC 08 10 18 10 06 10 16 10 28 10 67 D8 5D C4 01 78 80 03 E3 05 C0 00 E4 0F 00 C0 18 66 21 50 B0 51 00 1B 30 40 70 36 00 40 84 63 00 00 1E 01 1D 00 72 51 D0 1E 20 6E 28 55 00 40 84 63 00 00 1E 00 00 00 00 00 00 8E ^
[ 3222.733667] [drm] dc_link_detect: manufacturer_id = 6D1E, product_id = 1, serial_number = 1010, manufacture_week = 1, manufacture_year = 25, display_name = LG TV, speaker_flag = 5, audio_mode_count = 3
[ 3222.733668] [drm] dc_link_detect: mode number = 0, format_code = 7, channel_count = 5, sample_rate = 6, sample_size = 192
[ 3222.733669] [drm] dc_link_detect: mode number = 1, format_code = 2, channel_count = 5, sample_rate = 7, sample_size = 80
[ 3222.733670] [drm] dc_link_detect: mode number = 2, format_code = 1, channel_count = 1, sample_rate = 87, sample_size = 7
[ 3222.733672] [drm] link=1, dc_sink_in=ffff8807f6805800 is now Connected
[ 3222.733673] [drm] DCHPD: connector_id=1: Old sink=          (null) New sink=ffff8807f6805800
[ 3222.733716] ------------[ cut here ]------------
[ 3222.733729] WARNING: CPU: 0 PID: 89 at drivers/gpu/drm/drm_mode_object.c:237 drm_object_property_set_value+0x5d/0x70 [drm]
[ 3222.733730] Modules linked in: blowfish_generic blowfish_x86_64 blowfish_common des3_ede_x86_64 des_generic cast5_avx_x86_64 cast5_generic cast_common cbc twofish_generic twofish_avx_x86_64 twofish_x86_64_3way twofish_x86_64 twofish_common serpent_avx2 serpent_avx_x86_64 serpent_sse2_x86_64 serpent_generic lrw gf128mul ablk_helper xts arc4 md4 nls_utf8 cifs ccm dns_resolver fscache ipt_REJECT nf_reject_ipv4 nf_log_ipv4 nf_log_common xt_LOG xt_tcpudp xt_owner cmac xt_mark iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack bnep iptable_mangle cpufreq_ondemand msr iptable_filter btusb snd_hda_codec_realtek btrtl btbcm snd_hda_codec_generic btintel bluetooth snd_hda_codec_hdmi nls_iso8859_1 snd_hda_intel nls_cp437 snd_hda_codec ecdh_generic vfat rfkill fat igb snd_hda_core crc16
[ 3222.733754]  ptp pps_core edac_mce_amd dca snd_hwdep kvm_amd snd_pcm snd_timer kvm snd soundcore sp5100_tco irqbypass evdev i2c_piix4 shpchp input_leds pcspkr led_class tpm_tis tpm_tis_core tpm 8250_dw button acpi_cpufreq sch_fq_codel usbip_host usbip_core sg exfat(O) it87(O) hwmon_vid ip_tables x_tables algif_skcipher af_alg sd_mod uas usb_storage serio_raw atkbd libps2 crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc aesni_intel aes_x86_64 crypto_simd glue_helper cryptd ccp rng_core ahci xhci_pci libahci xhci_hcd libata usbcore scsi_mod usb_common i8042 serio amdgpu i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm xfs libcrc32c crc32c_generic crc32c_intel dm_crypt dm_mod dax nvme nvme_core i2c_dev
[ 3222.733784] CPU: 0 PID: 89 Comm: kworker/0:1 Tainted: G        W  O    4.13.0-rc5-amd+ #3
[ 3222.733785] Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 0807 07/19/2017
[ 3222.733834] Workqueue: events dm_irq_work_func [amdgpu]
[ 3222.733835] task: ffff8807fad82940 task.stack: ffffc9000354c000
[ 3222.733846] RIP: 0010:drm_object_property_set_value+0x5d/0x70 [drm]
[ 3222.733847] RSP: 0018:ffffc9000354fd98 EFLAGS: 00010246
[ 3222.733848] RAX: ffffffffa04b4c80 RBX: ffff8807f5896000 RCX: ffff8807f5896148
[ 3222.733849] RDX: 0000000000000000 RSI: ffff8807fa8bf180 RDI: ffff8807f5896028
[ 3222.733849] RBP: ffffc9000354fd98 R08: 0000000000000009 R09: ffff8807f7222700
[ 3222.733850] R10: ffff8807fa63ddd0 R11: 0000000000000039 R12: ffff8807f5940000
[ 3222.733851] R13: 0000000000000000 R14: ffff8807f5896028 R15: ffff8807fad67800
[ 3222.733852] FS:  0000000000000000(0000) GS:ffff88081ec00000(0000) knlGS:0000000000000000
[ 3222.733853] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 3222.733853] CR2: 00007fff0e92afe0 CR3: 00000007f84ea000 CR4: 00000000003406f0
[ 3222.733854] Call Trace:
[ 3222.733902]  amdgpu_dm_add_sink_to_freesync_module+0x8f/0x1c0 [amdgpu]
[ 3222.733947]  amdgpu_dm_update_connector_after_detect+0xb9/0x200 [amdgpu]
[ 3222.733991]  handle_hpd_irq+0x4c/0x90 [amdgpu]
[ 3222.734034]  dm_irq_work_func+0x57/0x70 [amdgpu]
[ 3222.734037]  process_one_work+0x1db/0x3e0
[ 3222.734039]  worker_thread+0x47/0x3e0
[ 3222.734041]  kthread+0x125/0x140
[ 3222.734043]  ? process_one_work+0x3e0/0x3e0
[ 3222.734044]  ? kthread_create_on_node+0x70/0x70
[ 3222.734047]  ret_from_fork+0x22/0x30
[ 3222.734048] Code: 71 08 74 2b 83 ef 01 b8 01 00 00 00 48 83 c7 01 eb 0a 48 83 c0 01 48 39 34 c1 74 16 48 39 f8 4c 63 c0 75 ee b8 ea ff ff ff 5d c3 <0f> ff eb c0 45 31 c0 4a 89 94 c1 c8 00 00 00 31 c0 5d c3 0f 1f 
[ 3222.734072] ---[ end trace dfc393643d376a35 ]---
[ 3222.734191] [drm] Got external EDID base block and 1 extension from "edid/LG_EG9609_edid.bin" for connector "HDMI-A-1"
[ 3222.735024] [drm] Atomic commit: SET crtc id 0: [ffff8807f6382000]
[ 3222.735027] [drm] dc_commit_context: 1 streams
[ 3222.735029] [drm] core_stream 0xf6802800: src: 0, 0, 1024, 768; dst: 0, 0, 1024, 768, colorSpace:4
[ 3222.735030] [drm]    pix_clk_khz: 65000, h_total: 1344, v_total: 806, pixelencoder:3, displaycolorDepth:2
[ 3222.735031] [drm]    sink name: LG TV, serial: 16843123
[ 3222.735032] [drm]    link: 1
[ 3222.737661] [drm] [Mode]     [HDMIA][ConnIdx:1] {1024x768, 1344x806@65000Khz}^
Comment 1 Harry Wentland 2017-08-22 14:57:04 UTC
Created attachment 133672 [details] [review]
Draft fix
Comment 2 Harry Wentland 2017-08-22 14:57:22 UTC
Thanks for reporting this. I've seen this myself and been debugging it a bit. I have a patch but am not completely happy with it as it seems like it leaves a pipe running in some cases when we should disable it.

Anyways, it might be worth a try and is attached.
Comment 3 dwagner 2017-08-22 22:09:07 UTC
The good news: Your draft fix works for me - the system no longer crashes when woken up from S3 with HDMI display off. Thanks a lot for this really important fix.


The mediocre news: Lots of scary messages are logged by amdgpu, as reported by "dmesg". I'll split this into separate parts:

Part 1: Scary amdgpu messages when booting (with display on, only console, no X11):

[    1.246652] amdgpu: [powerplay] 
                failed to send message 309 ret is 254 
[    1.246670] amdgpu: [powerplay] 
                failed to send pre message 14e ret is 254 
...
[    1.298809] ------------[ cut here ]------------
[    1.298817] WARNING: CPU: 14 PID: 156 at drivers/gpu/drm/drm_mode_object.c:237 drm_object_property_set_value+0x5d/0x70 [drm]
[    1.298817] Modules linked in: amdgpu(+) i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm xfs libcrc32c crc32c_generic crc32c_intel dm_crypt dm_mod dax nvme nvme_core i2c_dev
[    1.298824] CPU: 14 PID: 156 Comm: modprobe Not tainted 4.13.0-rc5-amd+ #4
[    1.298824] Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 0807 07/19/2017
[    1.298825] task: ffff8807f69fd280 task.stack: ffffc90003f1c000
[    1.298831] RIP: 0010:drm_object_property_set_value+0x5d/0x70 [drm]
[    1.298831] RSP: 0018:ffffc90003f1f850 EFLAGS: 00010246
[    1.298832] RAX: ffffffffa04b4c80 RBX: ffff8807f54da000 RCX: ffff8807f54da148
[    1.298832] RDX: 0000000000000000 RSI: ffff8807f7295a80 RDI: ffff8807f54da028
[    1.298833] RBP: ffffc90003f1f850 R08: 0000000000000009 R09: ffff8807f6f08500
[    1.298833] R10: ffff8807fa650b90 R11: 0000000000000039 R12: ffff8807f58d0000
[    1.298833] R13: 0000000000000000 R14: ffff8807f54da028 R15: ffff8807f58d0000
[    1.298834] FS:  00007fd4b38cdb40(0000) GS:ffff88081ef80000(0000) knlGS:0000000000000000
[    1.298834] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    1.298835] CR2: 0000000000000000 CR3: 00000007f6f15000 CR4: 00000000003406e0
[    1.298835] Call Trace:
[    1.298876]  amdgpu_dm_add_sink_to_freesync_module+0x8f/0x1c0 [amdgpu]
[    1.298909]  amdgpu_dm_update_connector_after_detect+0xb9/0x200 [amdgpu]
[    1.298941]  amdgpu_dm_initialize_drm_device+0x355/0x650 [amdgpu]
[    1.298943]  ? printk+0x52/0x6e
[    1.298974]  ? mod_freesync_create+0x13e/0x190 [amdgpu]
[    1.299005]  amdgpu_dm_init+0x15f/0x270 [amdgpu]
[    1.299035]  dm_hw_init+0x12/0x20 [amdgpu]
[    1.299061]  amdgpu_device_init+0xd12/0x1550 [amdgpu]
[    1.299063]  ? alloc_pages_current+0x6a/0xd0
[    1.299064]  ? kmalloc_order_trace+0x2f/0xe0
[    1.299089]  amdgpu_driver_load_kms+0x8b/0x2d0 [amdgpu]
[    1.299095]  drm_dev_register+0x146/0x1d0 [drm]
[    1.299120]  amdgpu_pci_probe+0x113/0x150 [amdgpu]
[    1.299122]  local_pci_probe+0x42/0xa0
[    1.299122]  ? pci_assign_irq+0x2b/0x120
[    1.299124]  pci_device_probe+0x18d/0x1a0
[    1.299126]  driver_probe_device+0x2ff/0x450
[    1.299127]  __driver_attach+0xa4/0xe0
[    1.299128]  ? driver_probe_device+0x450/0x450
[    1.299129]  bus_for_each_dev+0x6e/0xb0
[    1.299129]  driver_attach+0x1e/0x20
[    1.299130]  bus_add_driver+0x1d0/0x270
[    1.299131]  ? 0xffffffffa0577000
[    1.299132]  driver_register+0x60/0xe0
[    1.299132]  ? 0xffffffffa0577000
[    1.299133]  __pci_register_driver+0x4c/0x50
[    1.299158]  amdgpu_init+0x91/0xa4 [amdgpu]
[    1.299159]  do_one_initcall+0x50/0x190
[    1.299160]  ? __vunmap+0x81/0xb0
[    1.299162]  ? kmem_cache_alloc_trace+0x14a/0x1b0
[    1.299162]  ? vfree+0x2e/0x70
[    1.299164]  do_init_module+0x5f/0x1e9
[    1.299165]  load_module+0x24de/0x2af0
[    1.299167]  SyS_finit_module+0x101/0x120
[    1.299168]  ? SyS_finit_module+0x101/0x120
[    1.299170]  entry_SYSCALL_64_fastpath+0x13/0x94
[    1.299171] RIP: 0033:0x7fd4b2fb5029
[    1.299171] RSP: 002b:00007ffc74de13c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[    1.299172] RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fd4b2fb5029
[    1.299172] RDX: 0000000000000000 RSI: 00000000006d5440 RDI: 0000000000000004
[    1.299172] RBP: 0000000000000005 R08: 0000000000000000 R09: 0000000000000013
[    1.299173] R10: 0000000000000004 R11: 0000000000000246 R12: 00007ffc74de03c0
[    1.299173] R13: 00007ffc74de03a0 R14: 0000000000000005 R15: 00000000006d60c0
[    1.299174] Code: 71 08 74 2b 83 ef 01 b8 01 00 00 00 48 83 c7 01 eb 0a 48 83 c0 01 48 39 34 c1 74 16 48 39 f8 4c 63 c0 75 ee b8 ea ff ff ff 5d c3 <0f> ff eb c0 45 31 c0 4a 89 94 c1 c8 00 00 00 31 c0 5d c3 0f 1f 
[    1.299187] ---[ end trace 0bc506e4ed8edf88 ]---



Part 2: Scary amdgpu messages when waking system up after doing:
* "echo mem >/sys/power/state" (with display on, only console, no X11)
* switch off HDMI display

[  120.175798] amdgpu: [powerplay] 
                failed to send message 309 ret is 254 
[  120.175816] amdgpu: [powerplay] 
                failed to send pre message 14e ret is 254 



Part 3: Scary amdgpu messages when re-enabling HDMI display 24 seconds after Part 2 above:

[  144.677171] [drm] [Detect]   [HDMIA][ConnIdx:1] LG TV: [Block 0] 00 FF FF FF FF FF FF 00 1E 6D 01 00 01 01 01 01 01 19 01 03 80 A0 5A 78 0A EE 91 A3 54 4C 99 26 0F 50 54 A1 08 00 31 40 45 40 61 40 71 40 81 80 01 01 01 01 01 01 08 E8 00 30 F2 70 5A 80 B0 58 8A 00 40 84 63 00 00 1E 02 3A 80 18 71 38 2D 40 58 2C 45 00 40 84 63 00 00 1E 00 00 00 FD 00 3A 3E 1E 88 3C 00 0A 20 20 20 20 20 20 00 00 00 FC 00 4C 47 20 54 56 0A 20 20 20 20 20 20 20 01 A0 ^
[  144.677187] [drm] [Detect]   [HDMIA][ConnIdx:1] LG TV: [Block 1] 02 03 55 F1 58 10 9F 04 13 05 14 03 02 12 20 21 22 15 01 60 61 5D 5E 5F 65 66 62 63 64 29 3D 06 C0 15 07 50 09 57 07 7C 03 0C 00 20 00 B8 3C 20 C0 8E 01 02 03 04 01 4F 3F FC 08 10 18 10 06 10 16 10 28 10 67 D8 5D C4 01 78 80 03 E3 05 C0 00 E4 0F 00 C0 18 66 21 50 B0 51 00 1B 30 40 70 36 00 40 84 63 00 00 1E 01 1D 00 72 51 D0 1E 20 6E 28 55 00 40 84 63 00 00 1E 00 00 00 00 00 00 8E ^
[  144.677190] [drm] dc_link_detect: manufacturer_id = 6D1E, product_id = 1, serial_number = 1010, manufacture_week = 1, manufacture_year = 25, display_name = LG TV, speaker_flag = 5, audio_mode_count = 3
[  144.677191] [drm] dc_link_detect: mode number = 0, format_code = 7, channel_count = 5, sample_rate = 6, sample_size = 192
[  144.677192] [drm] dc_link_detect: mode number = 1, format_code = 2, channel_count = 5, sample_rate = 7, sample_size = 80
[  144.677194] [drm] dc_link_detect: mode number = 2, format_code = 1, channel_count = 1, sample_rate = 87, sample_size = 7
[  144.677195] [drm] link=1, dc_sink_in=ffff8807f9d69000 is now Connected
[  144.677196] [drm] DCHPD: connector_id=1: Old sink=ffff8807f9d6d800 New sink=ffff8807f9d69000
[  144.677233] ------------[ cut here ]------------
[  144.677247] WARNING: CPU: 0 PID: 89 at drivers/gpu/drm/drm_mode_object.c:237 drm_object_property_set_value+0x5d/0x70 [drm]
[  144.677248] Modules linked in: arc4 md4 nls_utf8 cifs ccm dns_resolver fscache ipt_REJECT nf_reject_ipv4 nf_log_ipv4 nf_log_common xt_LOG xt_tcpudp xt_owner xt_mark cmac iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat bnep nf_conntrack iptable_mangle cpufreq_ondemand msr iptable_filter nls_iso8859_1 nls_cp437 vfat fat snd_hda_codec_realtek edac_mce_amd snd_hda_codec_generic btusb btrtl snd_hda_codec_hdmi btbcm btintel sp5100_tco kvm_amd igb bluetooth kvm snd_hda_intel evdev ptp input_leds ecdh_generic pps_core rfkill irqbypass led_class pcspkr i2c_piix4 dca crc16 snd_hda_codec snd_hda_core snd_hwdep snd_pcm snd_timer snd soundcore shpchp tpm_tis tpm_tis_core tpm 8250_dw button acpi_cpufreq sch_fq_codel usbip_host usbip_core sg exfat(O) it87(O) hwmon_vid ip_tables x_tables algif_skcipher
[  144.677276]  af_alg sd_mod uas usb_storage serio_raw atkbd libps2 crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc aesni_intel aes_x86_64 crypto_simd glue_helper cryptd ccp rng_core ahci libahci xhci_pci xhci_hcd libata usbcore scsi_mod usb_common i8042 serio amdgpu i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm xfs libcrc32c crc32c_generic crc32c_intel dm_crypt dm_mod dax nvme nvme_core i2c_dev
[  144.677294] CPU: 0 PID: 89 Comm: kworker/0:1 Tainted: G        W  O    4.13.0-rc5-amd+ #4
[  144.677295] Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 0807 07/19/2017
[  144.677344] Workqueue: events dm_irq_work_func [amdgpu]
[  144.677345] task: ffff8807fad85280 task.stack: ffffc9000354c000
[  144.677356] RIP: 0010:drm_object_property_set_value+0x5d/0x70 [drm]
[  144.677357] RSP: 0018:ffffc9000354fdb8 EFLAGS: 00010246
[  144.677358] RAX: ffffffffa04b4c80 RBX: ffff8807f54da000 RCX: ffff8807f54da148
[  144.677359] RDX: 0000000000000000 RSI: ffff8807f7295a80 RDI: ffff8807f54da028
[  144.677359] RBP: ffffc9000354fdb8 R08: 0000000000000009 R09: 0000000000000004
[  144.677360] R10: ffffea001fd4b9c0 R11: 0000000000000001 R12: ffff8807f54da028
[  144.677361] R13: ffff8807f71311f8 R14: ffff88081ec19080 R15: ffff8807fad66540
[  144.677362] FS:  0000000000000000(0000) GS:ffff88081ec00000(0000) knlGS:0000000000000000
[  144.677363] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  144.677363] CR2: 00007f9914cb94f0 CR3: 00000007f9b67000 CR4: 00000000003406f0
[  144.677364] Call Trace:
[  144.677412]  amdgpu_dm_remove_sink_from_freesync_module+0x82/0xb0 [amdgpu]
[  144.677456]  amdgpu_dm_update_connector_after_detect+0x90/0x200 [amdgpu]
[  144.677499]  handle_hpd_irq+0x4c/0x90 [amdgpu]
[  144.677541]  dm_irq_work_func+0x57/0x70 [amdgpu]
[  144.677545]  process_one_work+0x1db/0x3e0
[  144.677546]  worker_thread+0x47/0x3e0
[  144.677548]  kthread+0x125/0x140
[  144.677550]  ? process_one_work+0x3e0/0x3e0
[  144.677552]  ? kthread_create_on_node+0x70/0x70
[  144.677555]  ret_from_fork+0x22/0x30
[  144.677556] Code: 71 08 74 2b 83 ef 01 b8 01 00 00 00 48 83 c7 01 eb 0a 48 83 c0 01 48 39 34 c1 74 16 48 39 f8 4c 63 c0 75 ee b8 ea ff ff ff 5d c3 <0f> ff eb c0 45 31 c0 4a 89 94 c1 c8 00 00 00 31 c0 5d c3 0f 1f 
[  144.677579] ---[ end trace 0bc506e4ed8edfa0 ]---
[  144.677594] ------------[ cut here ]------------
[  144.677605] WARNING: CPU: 0 PID: 89 at drivers/gpu/drm/drm_mode_object.c:237 drm_object_property_set_value+0x5d/0x70 [drm]
[  144.677605] Modules linked in: arc4 md4 nls_utf8 cifs ccm dns_resolver fscache ipt_REJECT nf_reject_ipv4 nf_log_ipv4 nf_log_common xt_LOG xt_tcpudp xt_owner xt_mark cmac iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat bnep nf_conntrack iptable_mangle cpufreq_ondemand msr iptable_filter nls_iso8859_1 nls_cp437 vfat fat snd_hda_codec_realtek edac_mce_amd snd_hda_codec_generic btusb btrtl snd_hda_codec_hdmi btbcm btintel sp5100_tco kvm_amd igb bluetooth kvm snd_hda_intel evdev ptp input_leds ecdh_generic pps_core rfkill irqbypass led_class pcspkr i2c_piix4 dca crc16 snd_hda_codec snd_hda_core snd_hwdep snd_pcm snd_timer snd soundcore shpchp tpm_tis tpm_tis_core tpm 8250_dw button acpi_cpufreq sch_fq_codel usbip_host usbip_core sg exfat(O) it87(O) hwmon_vid ip_tables x_tables algif_skcipher
[  144.677628]  af_alg sd_mod uas usb_storage serio_raw atkbd libps2 crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc aesni_intel aes_x86_64 crypto_simd glue_helper cryptd ccp rng_core ahci libahci xhci_pci xhci_hcd libata usbcore scsi_mod usb_common i8042 serio amdgpu i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops drm xfs libcrc32c crc32c_generic crc32c_intel dm_crypt dm_mod dax nvme nvme_core i2c_dev
[  144.677642] CPU: 0 PID: 89 Comm: kworker/0:1 Tainted: G        W  O    4.13.0-rc5-amd+ #4
[  144.677642] Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 0807 07/19/2017
[  144.677684] Workqueue: events dm_irq_work_func [amdgpu]
[  144.677685] task: ffff8807fad85280 task.stack: ffffc9000354c000
[  144.677696] RIP: 0010:drm_object_property_set_value+0x5d/0x70 [drm]
[  144.677697] RSP: 0018:ffffc9000354fd98 EFLAGS: 00010246
[  144.677698] RAX: ffffffffa04b4c80 RBX: ffff8807f54da000 RCX: ffff8807f54da148
[  144.677698] RDX: 0000000000000000 RSI: ffff8807f7295a80 RDI: ffff8807f54da028
[  144.677699] RBP: ffffc9000354fd98 R08: 0000000000000009 R09: ffffffffa0217100
[  144.677700] R10: ffffc9000354fd30 R11: 0000000000000039 R12: ffff8807f58d0000
[  144.677700] R13: 0000000000000000 R14: ffff8807f54da028 R15: ffff8807fad66540
[  144.677701] FS:  0000000000000000(0000) GS:ffff88081ec00000(0000) knlGS:0000000000000000
[  144.677702] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  144.677703] CR2: 00007f9914cb94f0 CR3: 00000007f9b67000 CR4: 00000000003406f0
[  144.677703] Call Trace:
[  144.677744]  amdgpu_dm_add_sink_to_freesync_module+0x8f/0x1c0 [amdgpu]
[  144.677786]  amdgpu_dm_update_connector_after_detect+0xb9/0x200 [amdgpu]
[  144.677826]  handle_hpd_irq+0x4c/0x90 [amdgpu]
[  144.677867]  dm_irq_work_func+0x57/0x70 [amdgpu]
[  144.677869]  process_one_work+0x1db/0x3e0
[  144.677871]  worker_thread+0x47/0x3e0
[  144.677872]  kthread+0x125/0x140
[  144.677874]  ? process_one_work+0x3e0/0x3e0
[  144.677875]  ? kthread_create_on_node+0x70/0x70
[  144.677877]  ret_from_fork+0x22/0x30
[  144.677878] Code: 71 08 74 2b 83 ef 01 b8 01 00 00 00 48 83 c7 01 eb 0a 48 83 c0 01 48 39 34 c1 74 16 48 39 f8 4c 63 c0 75 ee b8 ea ff ff ff 5d c3 <0f> ff eb c0 45 31 c0 4a 89 94 c1 c8 00 00 00 31 c0 5d c3 0f 1f 
[  144.677901] ---[ end trace 0bc506e4ed8edfa1 ]---
[  144.678363] [drm] Atomic commit: SET crtc id 0: [ffff8807f557b800]
[  144.678366] [drm] dc_commit_context: 1 streams
[  144.678368] [drm] core_stream 0xf9d69400: src: 0, 0, 1024, 768; dst: 0, 0, 1024, 768, colorSpace:4
[  144.678369] [drm]    pix_clk_khz: 65000, h_total: 1344, v_total: 806, pixelencoder:3, displaycolorDepth:2
[  144.678370] [drm]    sink name: LG TV, serial: 16843123
[  144.678371] [drm]    link: 1
[  144.710685] [drm] [Mode]     [HDMIA][ConnIdx:1] {1024x768, 1344x806@65000Khz}^



The bad news: I originally thought that this fix would probably also fix system crashes that invariably occur to me when I use "xlock" to blank the screen of an X11 session, and then turn off the HDMI display. (The crashes in that scenario do not occur immediately after switching the display off, but after what seems to be a fixed period of time - I assume related to some dpms function or alike used by xlock.)
However, that xlock/then-display-off/then-wait/then-crash bug still occurs even with your fix. Should I open a separate ticket on this?
Comment 4 Arvind 2018-02-26 13:38:51 UTC
Hi all,

I think I'm having a similar issue using latest kernel 4.15.5 (on Manjaro). When resuming from S3, the following stack trace repeats continuously. System is unresponsive and a hard reset is required. Using an ASUS Prime X370 Pro board with a Ryzen 1700 and AMD RX580 GPU.


Feb 26 10:25:53 valkyrja kernel: WARNING: CPU: 0 PID: 376 at drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/gpio_service.c:238 dal_gpio_service_open+0x7a/0x200 [amdgpu]
Feb 26 10:25:53 valkyrja kernel: Modules linked in: fuse rfcomm arc4 devlink rt73usb rt2x00usb rt2x00lib mac80211 cfg80211 uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core snd_usb_audio videodev snd_usbmidi_lib crc_itu_t snd_rawmidi media snd_seq_device bnep nls_iso8859_1 nls_cp437 vfat fat amdkfd amd_iommu_v2 amdgpu nouveau btusb btrtl btbcm btintel bluetooth snd_hda_codec_realtek joydev mousedev snd_hda_codec_generic input_leds ecdh_generic snd_hda_codec_hdmi chash snd_hda_intel ttm igb eeepc_wmi snd_hda_codec edac_mce_amd asus_wmi drm_kms_helper sparse_keymap kvm_amd rfkill snd_hda_core wmi_bmof mxm_wmi kvm snd_hwdep drm irqbypass snd_pcm ptp crct10dif_pclmul pps_core crc32_pclmul i2c_algo_bit ghash_clmulni_intel dca snd_timer pcbc ccp snd agpgart syscopyarea led_class sysfillrect sysimgblt
Feb 26 10:25:53 valkyrja kernel:  rng_core fb_sys_fops soundcore aesni_intel aes_x86_64 crypto_simd glue_helper cryptd sp5100_tco i2c_piix4 pcspkr k10temp shpchp rtc_cmos wmi pinctrl_amd gpio_amdpt evdev acpi_cpufreq mac_hid vboxnetflt(O) vboxnetadp(O) vboxpci(O) vboxdrv(O) uinput it87(O) hwmon_vid sg crypto_user ip_tables x_tables ext4 crc16 mbcache jbd2 fscrypto sd_mod hid_generic usbhid hid crc32c_intel ahci xhci_pci libahci xhci_hcd libata usbcore scsi_mod usb_common
Feb 26 10:25:53 valkyrja kernel: CPU: 0 PID: 376 Comm: kworker/0:2 Tainted: G        W  O     4.15.5-1-MANJARO #1
Feb 26 10:25:53 valkyrja kernel: Hardware name: System manufacturer System Product Name/PRIME X370-PRO, BIOS 3803 01/22/2018
Feb 26 10:25:53 valkyrja kernel: Workqueue: events dm_irq_work_func [amdgpu]
Feb 26 10:25:53 valkyrja kernel: RIP: 0010:dal_gpio_service_open+0x7a/0x200 [amdgpu]
Feb 26 10:25:53 valkyrja kernel: RSP: 0018:ffffac6383b3f9f0 EFLAGS: 00010202
Feb 26 10:25:53 valkyrja kernel: RAX: 0000000000000000 RBX: 0000000000000008 RCX: 0000000000000003
Feb 26 10:25:53 valkyrja kernel: RDX: ffffa01a483af378 RSI: 0000000000000000 RDI: ffffa01a49f27400
Feb 26 10:25:53 valkyrja kernel: RBP: 0000000000000003 R08: ffffa01a492f3508 R09: 0000000000000001
Feb 26 10:25:53 valkyrja kernel: R10: fffff69aa0231380 R11: 0000000000000001 R12: ffffa01a49f27400
Feb 26 10:25:53 valkyrja kernel: R13: ffffa01a3da91890 R14: 0000000000000000 R15: 0000000000000003
Feb 26 10:25:53 valkyrja kernel: FS:  0000000000000000(0000) GS:ffffa01a6ec00000(0000) knlGS:0000000000000000
Feb 26 10:25:53 valkyrja kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Feb 26 10:25:53 valkyrja kernel: CR2: 000015d83de9c000 CR3: 000000071d0ee000 CR4: 00000000003406f0
Feb 26 10:25:53 valkyrja kernel: Call Trace:
Feb 26 10:25:53 valkyrja kernel:  dal_ddc_open+0x2d/0xe0 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  ? dal_hw_gpio_close+0xde/0x100 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dal_aux_engine_acquire+0x32/0x70 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dal_i2caux_acquire_aux_engine+0x56/0x80 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dal_i2caux_submit_aux_command+0x46/0x1c0 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dal_ddc_service_read_dpcd_data+0x65/0xa0 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dm_dp_aux_transfer+0x47/0xb0 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  drm_dp_dpcd_access+0x79/0x120 [drm_kms_helper]
Feb 26 10:25:53 valkyrja kernel:  drm_dp_dpcd_read+0x50/0x60 [drm_kms_helper]
Feb 26 10:25:53 valkyrja kernel:  dm_helpers_dp_read_dpcd+0x27/0x50 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  core_link_read_dpcd+0x1f/0x30 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  wait_for_training_aux_rd_interval+0x81/0xa0 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  perform_channel_equalization_sequence+0x7e/0x200 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dc_link_dp_perform_link_training+0x21e/0x280 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dp_hbr_verify_link_cap+0x12d/0x270 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dc_link_detect+0x6ba/0x940 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  handle_hpd_irq+0x3f/0x90 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  dm_irq_work_func+0x58/0x70 [amdgpu]
Feb 26 10:25:53 valkyrja kernel:  process_one_work+0x1ce/0x410
Feb 26 10:25:53 valkyrja kernel:  worker_thread+0x2b/0x3d0
Feb 26 10:25:53 valkyrja kernel:  ? process_one_work+0x410/0x410
Feb 26 10:25:53 valkyrja kernel:  kthread+0x113/0x130
Feb 26 10:25:53 valkyrja kernel:  ? kthread_create_on_node+0x70/0x70
Feb 26 10:25:53 valkyrja kernel:  ? do_syscall_64+0x74/0x190
Feb 26 10:25:53 valkyrja kernel:  ? SyS_exit_group+0x10/0x10
Feb 26 10:25:53 valkyrja kernel:  ret_from_fork+0x22/0x40
Feb 26 10:25:53 valkyrja kernel: Code: 48 89 0c 24 89 e9 d3 e3 85 1c 82 75 1e 83 fe 07 0f 87 58 01 00 00 89 f6 49 89 fe 4d 89 c5 48 8b 04 f5 c8 9c 0f c1 e9 e6 84 9a fa <0f> 0b b8 03 00 00 00 48 8b 5c 24 10 65 48 33 1c 25 28 00 00 00 
Feb 26 10:25:53 valkyrja kernel: ---[ end trace b80b11dda63ccc98 ]---
Comment 5 Harry Wentland 2018-02-26 16:02:52 UTC
Are you able to give Alex's amd-staging-drm-next or drm-next-4.17-wip branch from https://cgit.freedesktop.org/~agd5f/linux/?h=amd-staging-drm-next a try?
Comment 6 dwagner 2018-02-27 20:00:30 UTC
@Arvind: From the description of the symptoms you experience it might be rather the scenario of https://bugs.freedesktop.org/show_bug.cgi?id=103277 that you run into. (That occurred no sooner than 2 months after this bug report was filed, and was introduced with kernel changes that were committed later.)
Comment 7 Arvind 2018-02-28 19:02:29 UTC
(In reply to dwagner from comment #6)
> @Arvind: From the description of the symptoms you experience it might be
> rather the scenario of https://bugs.freedesktop.org/show_bug.cgi?id=103277
> that you run into.

You are right, my issue is indeed closer to the bug #103277 instead of this one.

(In reply to Harry Wentland from comment #5)
> Are you able to give Alex's amd-staging-drm-next or drm-next-4.17-wip branch
> from https://cgit.freedesktop.org/~agd5f/linux/?h=amd-staging-drm-next a try?

I'll give drm-next-4.17-wip a shot, thank you!

Also, since my issue is more related to the other bug report, I'll report back my testing directly there.
Comment 8 Martin Peres 2019-11-19 08:22:38 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/drm/amd/issues/229.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.