i915 Kaby Lake Refresh + HD 620 hard crash on suspend/resume
Summary
When resuming from s2idle or s2ram, my laptop -in 50-70% of cases- crashes hard and can only be restarted by holding the power button for 10 seconds. Since there is no kernel output, I've used pm_trace to trace back the issue to the i915 driver The kernel option i915.enable_dc=0 seems to work around the issue.
Details
When the laptop is idle or when doing a manual s2idle or s2ram, in a majority of cases (but not always) the computer crashes hard, without leaving debug information in the log files. Sometimes, the caps lock key led blinks when trying to resume, sometimes it doesn't, and sometimes the laptop reboots by itself.
pm_trace results in:
$ dmesg|grep Magic
[ 0.642939] PM: Magic number: 15:382:321
$ dmesg|grep matches
[ 0.642947] tty tty46: hash matches
[ 0.642957] pci 0000:00:02.0: hash matches
lspci shows:
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (rev 07)
i915.enable_dc=0 works around the issue. I've also tried i915.enable_dc=1, but this would still crash on resume (but not always)
This issue exists in kernels 4.14 up to and including 5.7 but I could not reproduce this in 4.9. Kernel 5.8-rc not tested. drm-tip not tested
Hardware/software info
-
Laptop: Asus Zenbook UX430UA-GV265T which has Kaby Lake Refresh i5-8250U + UHD 620.
-
Linux x86_64
-
kernel version: 5.7.10
-
Distribution: NixOS, but this issue was reproducible in the latest release-versions of Fedora, Mint, Arch, Ubuntu
The attached dmesg is from a successful boot without suspend/resume crashes (due to i915.enable_dc=0), but is included in case it contains details you may need.