Lenovo X1 Extreme screen never wakes up

Bug #1881828 reported by Kelly Kane
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Unreliably, but 9 times out of 10, if my screen goes to sleep on my laptop it will never wake back up. Looking in kern.log I see this output, scrolling on repeat, until I long-press the power button to shut off the laptop. Happened occasionally in Ubuntu 19.10, now regularly on 20.04. Persisted with the nvidia proprietary driver as well as the open source one. It has persisted across several official ubuntu packaged kernel revisions. I got kernel taint down to "0" and it kept happening. (Previously virtualbox and nvidia driver were in there.)

May 26 20:02:30 hawk-x1 kernel: [28401.972981] No Local Variables are initialized for Method [NVPO]
May 26 20:02:30 hawk-x1 kernel: [28401.972986] No Arguments are initialized for method [NVPO]
May 26 20:02:30 hawk-x1 kernel: [28401.972991] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.NVPO due to previous error (AE_AML_LOOP_TIMEOUT) (20190816/psparse-529)
May 26 20:02:30 hawk-x1 kernel: [28401.973016] ACPI Error: Aborting method \_SB.PCI0.PGON due to previous error (AE_AML_LOOP_TIMEOUT) (20190816/psparse-529)
May 26 20:02:30 hawk-x1 kernel: [28401.973033] ACPI Error: Aborting method \_SB.PCI0.PEG0.PG00._ON due to previous error (AE_AML_LOOP_TIMEOUT) (20190816/psparse-529)
May 26 20:02:30 hawk-x1 kernel: [28401.973058] acpi device:00: Failed to change power state to D0
May 26 20:02:31 hawk-x1 kernel: [28403.217052] video LNXVIDEO:00: Cannot transition to power state D0 for parent in (unknown)
May 26 20:02:31 hawk-x1 kernel: [28403.217064] nouveau 0000:01:00.0: Refused to change power state, currently in D3
May 26 20:02:31 hawk-x1 kernel: [28403.277092] video LNXVIDEO:00: Cannot transition to power state D0 for parent in (unknown)
May 26 20:02:31 hawk-x1 kernel: [28403.296906] nouveau 0000:01:00.0: Refused to change power state, currently in D3
May 26 20:02:31 hawk-x1 kernel: [28403.296915] video LNXVIDEO:00: Cannot transition to power state D0 for parent in (unknown)
May 26 20:02:31 hawk-x1 kernel: [28403.316894] nouveau 0000:01:00.0: Refused to change power state, currently in D3
May 26 20:02:31 hawk-x1 kernel: [28403.319495] nouveau 0000:01:00.0: tmr: stalled at ffffffffffffffff
May 26 20:02:31 hawk-x1 kernel: [28403.319497] ------------[ cut here ]------------
May 26 20:02:31 hawk-x1 kernel: [28403.319498] nouveau 0000:01:00.0: timeout
May 26 20:02:31 hawk-x1 kernel: [28403.319551] WARNING: CPU: 2 PID: 2697 at drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.c:35 g84_bar_flush+0xd6/0xe0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319552] Modules linked in: xt_conntrack xt_MASQUERADE nfnetlink xfrm_user xfrm_algo iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c xt_addrtype bpfilter ccm overlay aufs bnep binfmt_misc nls_iso8859_1 mei_hdcp intel_rapl_msr x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm intel_cstate intel_rapl_perf snd_hda_codec_hdmi snd_sof_pci snd_sof_intel_hda_common snd_soc_hdac_hda snd_sof_intel_hda snd_sof_intel_byt iwlmvm snd_sof_intel_ipc snd_sof mac80211 uvcvideo snd_sof_xtensa_dsp snd_hda_ext_core videobuf2_vmalloc snd_soc_acpi_intel_match videobuf2_memops snd_soc_acpi btusb libarc4 videobuf2_v4l2 btrtl videobuf2_common btbcm wmi_bmof thinkpad_acpi input_leds joydev snd_hda_codec_realtek btintel snd_soc_core snd_seq_midi videodev bluetooth snd_hda_codec_generic serio_raw snd_seq_midi_event nvram snd_compress ac97_bus intel_wmi_thunderbolt snd_pcm_dmaengine ledtrig_audio mc iwlwifi snd_rawmidi ecdh_generic 8250_dw ecc snd_hda_intel mei_me cfg80211
May 26 20:02:31 hawk-x1 kernel: [28403.319567] snd_intel_dspcfg mei snd_hda_codec snd_seq snd_hda_core ucsi_acpi snd_hwdep processor_thermal_device typec_ucsi intel_rapl_common snd_pcm intel_pch_thermal intel_soc_dts_iosf typec snd_seq_device snd_timer snd soundcore int3403_thermal int340x_thermal_zone int3400_thermal mac_hid acpi_pad acpi_thermal_rel sch_fq_codel iptable_filter ip6table_filter ip6_tables br_netfilter bridge stp llc arp_tables parport_pc ppdev lp parport ip_tables x_tables autofs4 dm_crypt uas usb_storage crct10dif_pclmul crc32_pclmul ghash_clmulni_intel nouveau mxm_wmi i2c_algo_bit ttm drm_kms_helper aesni_intel syscopyarea sysfillrect crypto_simd sysimgblt cryptd fb_sys_fops glue_helper nvme psmouse e1000e drm intel_lpss_pci i2c_i801 nvme_core thunderbolt intel_lpss idma64 virt_dma wmi video
May 26 20:02:31 hawk-x1 kernel: [28403.319582] CPU: 2 PID: 2697 Comm: gnome-shell Kdump: loaded Not tainted 5.4.0-31-generic #35-Ubuntu
May 26 20:02:31 hawk-x1 kernel: [28403.319583] Hardware name: LENOVO 20MF000LUS/20MF000LUS, BIOS N2EET42W (1.24 ) 08/06/2019
May 26 20:02:31 hawk-x1 kernel: [28403.319601] RIP: 0010:g84_bar_flush+0xd6/0xe0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319603] Code: 8b 40 10 48 8b 78 10 4c 8b 77 50 4d 85 f6 75 03 4c 8b 37 e8 ec 35 88 eb 4c 89 f2 48 c7 c7 14 b8 9d c0 48 89 c6 e8 c5 9c 22 eb <0f> 0b eb a6 e8 91 99 22 eb 90 0f 1f 44 00 00 55 49 89 d0 b9 00 02
May 26 20:02:31 hawk-x1 kernel: [28403.319603] RSP: 0018:ffffa6d30456ba50 EFLAGS: 00010082
May 26 20:02:31 hawk-x1 kernel: [28403.319604] RAX: 0000000000000000 RBX: ffff92156d981800 RCX: 0000000000000006
May 26 20:02:31 hawk-x1 kernel: [28403.319604] RDX: 0000000000000007 RSI: 0000000000000096 RDI: ffff921583a978c0
May 26 20:02:31 hawk-x1 kernel: [28403.319605] RBP: ffffa6d30456baa0 R08: 0000000000000954 R09: 0000000000000004
May 26 20:02:31 hawk-x1 kernel: [28403.319605] R10: 0000000000000000 R11: 0000000000000001 R12: ffff92157fb58ac8
May 26 20:02:31 hawk-x1 kernel: [28403.319606] R13: 0000000000000246 R14: ffff92157f3bcaf0 R15: 000019d534ba5a82
May 26 20:02:31 hawk-x1 kernel: [28403.319607] FS: 00007fa398654cc0(0000) GS:ffff921583a80000(0000) knlGS:0000000000000000
May 26 20:02:31 hawk-x1 kernel: [28403.319607] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
May 26 20:02:31 hawk-x1 kernel: [28403.319608] CR2: 00007f8b16a11d10 CR3: 000000081930a001 CR4: 00000000003606e0
May 26 20:02:31 hawk-x1 kernel: [28403.319608] Call Trace:
May 26 20:02:31 hawk-x1 kernel: [28403.319628] nvkm_bar_flush+0x1f/0x30 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319652] nv50_instobj_release+0x2e/0xa0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319676] nvkm_instobj_load+0x54/0xb0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319697] nvkm_instmem_init+0x31/0x80 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319712] nvkm_subdev_init+0x99/0xd0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319714] ? ktime_get+0x3e/0xa0
May 26 20:02:31 hawk-x1 kernel: [28403.319714] ? ktime_get+0x3e/0xa0
May 26 20:02:31 hawk-x1 kernel: [28403.319742] nvkm_device_init+0x118/0x1a0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319768] nvkm_udevice_init+0x48/0x60 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319785] nvkm_object_init+0x43/0x110 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319800] nvkm_object_init+0x74/0x110 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319817] nvkm_object_init+0x74/0x110 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319846] nvkm_client_resume+0xe/0x10 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319862] nvif_client_resume+0x1d/0x20 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319891] nouveau_do_resume+0x2e/0xc0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319919] nouveau_pmops_runtime_resume+0x86/0x160 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319921] pci_pm_runtime_resume+0x85/0xa0
May 26 20:02:31 hawk-x1 kernel: [28403.319923] ? pci_restore_standard_config+0x50/0x50
May 26 20:02:31 hawk-x1 kernel: [28403.319925] __rpm_callback+0x8c/0x150
May 26 20:02:31 hawk-x1 kernel: [28403.319926] ? pci_restore_standard_config+0x50/0x50
May 26 20:02:31 hawk-x1 kernel: [28403.319928] rpm_callback+0x24/0x80
May 26 20:02:31 hawk-x1 kernel: [28403.319929] ? pci_restore_standard_config+0x50/0x50
May 26 20:02:31 hawk-x1 kernel: [28403.319930] rpm_resume+0x568/0x780
May 26 20:02:31 hawk-x1 kernel: [28403.319931] __pm_runtime_resume+0x52/0x80
May 26 20:02:31 hawk-x1 kernel: [28403.319958] nouveau_drm_ioctl+0x40/0xc0 [nouveau]
May 26 20:02:31 hawk-x1 kernel: [28403.319960] do_vfs_ioctl+0x407/0x670
May 26 20:02:31 hawk-x1 kernel: [28403.319962] ? fput+0x13/0x15
May 26 20:02:31 hawk-x1 kernel: [28403.319964] ? __sys_recvmsg+0x88/0xa0
May 26 20:02:31 hawk-x1 kernel: [28403.319965] ksys_ioctl+0x67/0x90
May 26 20:02:31 hawk-x1 kernel: [28403.319965] __x64_sys_ioctl+0x1a/0x20
May 26 20:02:31 hawk-x1 kernel: [28403.319967] do_syscall_64+0x57/0x190
May 26 20:02:31 hawk-x1 kernel: [28403.319969] entry_SYSCALL_64_after_hwframe+0x44/0xa9
May 26 20:02:31 hawk-x1 kernel: [28403.319970] RIP: 0033:0x7fa39daa237b
May 26 20:02:31 hawk-x1 kernel: [28403.319971] Code: 0f 1e fa 48 8b 05 15 3b 0d 00 64 c7 00 26 00 00 00 48 c7 c0 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e5 3a 0d 00 f7 d8 64 89 01 48
May 26 20:02:31 hawk-x1 kernel: [28403.319972] RSP: 002b:00007ffed8fcb2b8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
May 26 20:02:31 hawk-x1 kernel: [28403.319973] RAX: ffffffffffffffda RBX: 00007ffed8fcb320 RCX: 00007fa39daa237b
May 26 20:02:31 hawk-x1 kernel: [28403.319973] RDX: 00007ffed8fcb320 RSI: 00000000c0406481 RDI: 000000000000000c
May 26 20:02:31 hawk-x1 kernel: [28403.319973] RBP: 00000000c0406481 R08: 0000000000000000 R09: 000055ba3ec38038
May 26 20:02:31 hawk-x1 kernel: [28403.319974] R10: 0000000000000007 R11: 0000000000000246 R12: 000055ba3ec2e030
May 26 20:02:31 hawk-x1 kernel: [28403.319974] R13: 000000000000000c R14: 000055ba3ec2c890 R15: 000055ba3ec2bc50
May 26 20:02:31 hawk-x1 kernel: [28403.319976] ---[ end trace ee529c348f122517 ]---
May 26 20:02:31 hawk-x1 kernel: [28403.322536] nouveau 0000:01:00.0: tmr: stalled at ffffffffffffffff
May 26 20:02:31 hawk-x1 kernel: [28403.322536] ------------[ cut here ]------------

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: linux-image-5.4.0-33-generic 5.4.0-33.37
ProcVersionSignature: Ubuntu 5.4.0-33.37-generic 5.4.34
Uname: Linux 5.4.0-33-generic x86_64
ApportVersion: 2.20.11-0ubuntu27
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: kelly 2328 F.... pulseaudio
 /dev/snd/controlC0: kelly 2328 F.... pulseaudio
CasperMD5CheckResult: skip
Date: Tue Jun 2 17:53:19 2020
InstallationDate: Installed on 2019-12-07 (179 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan Ermine" - Release amd64 (20191017)
MachineType: LENOVO 20MF000LUS
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 nouveaudrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-5.4.0-33-generic root=/dev/mapper/vgubuntu-root ro acpi_osi=! "acpi_osi=Windows 2015" quiet splash crashkernel=512M-:192M vt.handoff=7
PulseList: Error: command ['pacmd', 'list'] failed with exit code 1: No PulseAudio daemon running, or not running as session daemon.
RelatedPackageVersions:
 linux-restricted-modules-5.4.0-33-generic N/A
 linux-backports-modules-5.4.0-33-generic N/A
 linux-firmware 1.187
SourcePackage: linux
UpgradeStatus: Upgraded to focal on 2020-05-07 (27 days ago)
dmi.bios.date: 08/06/2019
dmi.bios.vendor: LENOVO
dmi.bios.version: N2EET42W (1.24 )
dmi.board.asset.tag: Not Available
dmi.board.name: 20MF000LUS
dmi.board.vendor: LENOVO
dmi.board.version: SDK0J40697 WIN
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: None
dmi.modalias: dmi:bvnLENOVO:bvrN2EET42W(1.24):bd08/06/2019:svnLENOVO:pn20MF000LUS:pvrThinkPadX1Extreme:rvnLENOVO:rn20MF000LUS:rvrSDK0J40697WIN:cvnLENOVO:ct10:cvrNone:
dmi.product.family: ThinkPad X1 Extreme
dmi.product.name: 20MF000LUS
dmi.product.sku: LENOVO_MT_20MF_BU_Think_FM_ThinkPad X1 Extreme
dmi.product.version: ThinkPad X1 Extreme
dmi.sys.vendor: LENOVO

Revision history for this message
Kelly Kane (kellyjkane) wrote :
Revision history for this message
AaronMa (mapengyu) wrote :

It's a nouveau issue.
Could you try 5.7 kernel?
https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.7/

Or would you like try nvidia-driver-440?

Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Kelly Kane (kellyjkane) wrote :

Signed and installed 5.7.0-050700-generic from mainline. I will test it out and see what I get, thank you!

Revision history for this message
Kelly Kane (kellyjkane) wrote :

Tested lightly yesterday as I didn't get much time to use my laptop, however I went through several sleep/wake cycles, some with power plugged in lid left open, on battery lid left open, on battery lid down to lid up several hours later. Whenever I walked past it I did "something" to wake it up, unlock it, then walk away.

0 crashes. I will continue to use the laptop to attempt to "prove a negative." Please let me know any data to collect or further testing would be useful to attempt.

Revision history for this message
Kelly Kane (kellyjkane) wrote :

I heavily used the laptop over the course of another day and half. Zero crashes! I did everything in my power to induce the failure mode I was previously seeing and nada. I closed the lid with wreckless abandon, left it open, locked it, plugged in, on battery, etc. So far so good. kern.log is clean.

Let me know what if anything else you would like me to do. Happy to test a backport or whatever.

Revision history for this message
Kelly Kane (kellyjkane) wrote :

I've been testing various previous releases of Linux from the mainline repo. 5.6.2 still fails, 5.6.18 works fine. 5.6.0 and 5.6.1 both have busted wifi so I didn't test them beyond realizing my wifi didn't work.

Looking through the CHANGES files I see 5.6.6 and 5.6.7 both reference nouveau changes, with 5.6.7 actually saying "work around hang on init" which seems promising. I will try those kernels next and see what works or doesn't work.

Revision history for this message
Kelly Kane (kellyjkane) wrote :

I attempted to get a bisect going but failed. These commit logs look promising though as to where the fix lies.

~/git/mainline-crack$ git log --oneline v5.6.6..v5.6.7 -- ./drivers/gpu/drm/nouveau/
360aba644f1f drm/nouveau/gr/gp107,gp108: implement workaround for HW hanging during init
dd4a3179e04c drm/nouveau: workaround runpm fail by disabling PCI power management on certain intel bridges
bca4d36a2a11 drm/nouveau/svm: fix vma range check for migration
ded30f112b5e drm/nouveau/svm: check for SVM initialized before migrating

Playing along from https://wiki.ubuntu.com/Kernel/KernelBisection#Reverse_bisecting_upstream_kernel_versions I did this and got a segfault in git. Whoops. Not sure where to go from here.

~/git/mainline-crack$ git checkout v5.6.7
Updating files: 100% (11314/11314), done.
Note: switching to 'v5.6.7'.
...
HEAD is now at 55b2af1c23eb Linux 5.6.7
~/git/mainline-crack$ git bisect start drivers/gpu/drm/nouveau/
Segmentation fault (core dumped)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.