Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] kernel 5.4.28 regression: XHCI breaks suspend
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
freifunk_connewitz
Apprentice
Apprentice


Joined: 08 Feb 2006
Posts: 236

PostPosted: Wed Apr 15, 2020 7:32 pm    Post subject: [SOLVED] kernel 5.4.28 regression: XHCI breaks suspend Reply with quote

hi
after a kernel update from 4.19.82 to 5.4.28 my system won't suspend anymore. The error messages:

Quote:
Apr 15 21:14:11 red kernel: xhci_hcd 0000:38:00.0: WARN: xHC save state timeout
Apr 15 21:14:11 red kernel: PM: suspend_common(): xhci_pci_suspend+0x0/0xd0 returns -110
Apr 15 21:14:11 red kernel: PM: pci_pm_suspend(): hcd_pci_suspend+0x0/0x20 returns -110
Apr 15 21:14:11 red kernel: PM: dpm_run_callback(): pci_pm_suspend+0x0/0x130 returns -110
Apr 15 21:14:11 red kernel: PM: Device 0000:38:00.0 failed to suspend async: error -110
Apr 15 21:14:11 red kernel: PM: Some devices failed to suspend, or early wake event detected


It looks like XHCI USB driver in kernel is blocking suspend - like it has been doing already back in 2013 (according to some internet findings).

I don't think it is about the recent switch to elogind over ConsoleKit: I removed ConsoleKit (and kept pm-utils, because whatever the news messages said, without pm-utils there is no suspend at all and no alternative was mentioned). But when I boot back into kernel 4.19.82 that has the same XHCI-related settings as the 5.4.28, suspend works flawlessly. Booting back to 5.4.28: suspend fails.

This problem might be handled if I bake the kernel new and build all the XHCI stuff as modules and then add a script to /etc/pm/sleep.d that removes and reinserts modules xhci_pci and hcd_pci during suspend/resume. But I wonder why the older kernel was successfully suspending before. Was there any patching regarding the problem that did not make it into version 5?

The hardware causing the trouble according to lspci: USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 4C 2018] (rev 06)


Last edited by freifunk_connewitz on Sat Apr 18, 2020 7:33 pm; edited 1 time in total
Back to top
View user's profile Send private message
freifunk_connewitz
Apprentice
Apprentice


Joined: 08 Feb 2006
Posts: 236

PostPosted: Fri Apr 17, 2020 11:15 am    Post subject: Reply with quote

Also with xhci as modules suspend2ram fails.

When I unload the xhci modules, in order:
Code:

modprobe -r xhci_plat_hcd
modprobe -r xhci_pci
modprobe -r xhci_hcd


s2ram succeeds.

After resuming, I reload the above modules. The funny thing is, for the next suspend2ram to succeed I DO NOT need to unload these modules. It seems like unloading them once told the XHCI driver to behave.

Am I completely alone with this phenomenon and have to blame it on the hardware being not fully supported? Or is this something kernel devs should be bugged with?

(BTW: I switched from sys-power/pm-utils to sys-power/suspend, that's why no 'pm-suspend' but 's2ram' command to suspend)
Back to top
View user's profile Send private message
freifunk_connewitz
Apprentice
Apprentice


Joined: 08 Feb 2006
Posts: 236

PostPosted: Sat Apr 18, 2020 7:33 pm    Post subject: Reply with quote

weird,
after some more reboots suspend works fine, afer the third reboot even the suspend button in plasma returned. marking as solved.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum