pop-os / pipewire

Packaging fork
https://gitlab.freedesktop.org/pipewire/pipewire
Other
7 stars 3 forks source link

Pop OS fails to suspend on systems with intel audio, known kernel bug requiring update #44

Open DanielJoyce opened 1 year ago

DanielJoyce commented 1 year ago

Laptop

Lenovo X1 Extreme 2021

Uname

❯ uname -a Linux pop-os 6.1.11-76060111-generic #202302091138~1675975749~22.04~f771a7f SMP PREEMPT_DYNAMIC Thu F x86_64 x86_64 x86_64 GNU/Linux

Distribution (run cat /etc/os-release):

NAME="Pop!_OS" VERSION="22.04 LTS" ID=pop ID_LIKE="ubuntu debian" PRETTY_NAME="Pop!_OS 22.04 LTS" VERSION_ID="22.04" HOME_URL="https://pop.system76.com" SUPPORT_URL="https://support.system76.com" BUG_REPORT_URL="https://github.com/pop-os/pop/issues" PRIVACY_POLICY_URL="https://system76.com/privacy" VERSION_CODENAME=jammy UBUNTU_CODENAME=jammy LOGO=distributor-logo-pop-os

Related Application and/or Package Version (run apt policy $PACKAGE NAME): N/A

Issue/Bug Description: When trying to suspend the laptop, either from menu or closing the lid, the laptop fails to suspend

Steps to reproduce (if you know):

Try and suspend the laptop. Suspension fails

Expected behavior:

laptop enters suspension

Other Notes:

Known kernel issue interacting with buggy pipewire

https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2960

Reccomendation is downgrade pipewire for now, or ship updated kernel

https://bugzilla.kernel.org/show_bug.cgi?id=216944

885488:Feb 23 05:03:54 pop-os kernel: [62221.948884] sof-audio-pci-intel-cnl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
885489:Feb 23 05:03:54 pop-os kernel: [62221.948886]  iDisp3: ASoC: __soc_pcm_hw_params() failed (-22)
885490:Feb 23 05:03:54 pop-os kernel: [62221.948886]  HDMI3: ASoC: dpcm_fe_dai_hw_params failed (-22)
885491:Feb 23 05:03:54 pop-os kernel: [62221.948943] sof-audio-pci-intel-cnl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
885492:Feb 23 05:03:54 pop-os kernel: [62221.948944]  iDisp3: ASoC: __soc_pcm_hw_params() failed (-22)
885493:Feb 23 05:03:54 pop-os kernel: [62221.948945]  HDMI3: ASoC: dpcm_fe_dai_hw_params failed (-22)
885768:Feb 23 05:04:21 pop-os kernel: [62247.100616] sof-audio-pci-intel-cnl 0000:00:1f.3: error: setting hw_params flag during suspend -22
885769:Feb 23 05:04:21 pop-os kernel: [62247.100617] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: pci_pm_suspend(): snd_sof_suspend+0x0/0x20 [snd_sof] returns -22
885770:Feb 23 05:04:21 pop-os kernel: [62247.100627] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: dpm_run_callback(): pci_pm_suspend+0x0/0x1b0 returns -22
885771:Feb 23 05:04:21 pop-os kernel: [62247.100630] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: failed to suspend async: error -22
885798:Feb 23 05:04:24 pop-os kernel: [62252.164812] sof-audio-pci-intel-cnl 0000:00:1f.3: error: setting hw_params flag during suspend -22
885799:Feb 23 05:04:24 pop-os kernel: [62252.164818] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: pci_pm_suspend(): snd_sof_suspend+0x0/0x20 [snd_sof] returns -22
885800:Feb 23 05:04:24 pop-os kernel: [62252.164837] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: dpm_run_callback(): pci_pm_suspend+0x0/0x1b0 returns -22
885801:Feb 23 05:04:24 pop-os kernel: [62252.164840] sof-audio-pci-intel-cnl 0000:00:1f.3: PM: failed to suspend async: error -22
885840:Feb 23 05:04:25 pop-os kernel: [62253.629175] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
DanielJoyce commented 1 year ago

Still a huge issue. With latest updates, pop_os can suspend sometimes, but fails to resume. Nividia driver seems kinda buggy lately. Really really frustrating.

Now when it wakes up, sometimes I get a black screen. Sometimes I get a login screen, but once I log in, I get a blank screen and nothing works. Then sometimes the fans spin up and it just sits there.

Pop_os is basically unusable for me now with nvidia + pipewire.

DanielJoyce commented 1 year ago
Mar 16 13:03:20 pop-os systemd[1]: systemd-hostnamed.service: Deactivated successfully.
Mar 16 13:03:43 pop-os systemd[101369]: Started Check for a new OS release, and display a notification if found.
Mar 16 13:03:43 pop-os systemd[101369]: Startup finished in 1min 304ms.
Mar 16 13:03:43 pop-os pop-upgrade[102168]: checking if pop-upgrade requires an update
Mar 16 13:03:43 pop-os systemd[1]: Starting Pop Upgrade Daemon...
Mar 16 13:03:43 pop-os pop-upgrade[102187]: [INFO ] daemon/mod.rs:389: initializing daemon
Mar 16 13:03:43 pop-os dbus-broker[809]: A security policy denied :1.1426 to send method call /com/system76/PopUpgrade:com.system76.PopUpgrade.UpdateCheck to com.system76.PopUpgrade.
Mar 16 13:03:43 pop-os systemd[1]: Started Pop Upgrade Daemon.
Mar 16 13:03:43 pop-os pop-upgrade[102187]: [INFO ] daemon/mod.rs:749: daemon registered -- listening for new events
Mar 16 13:03:04 pop-os systemd[3117]: evolution-addressbook-factory.service: Consumed 1.321s CPU time.
Mar 16 13:03:04 pop-os systemd[3117]: xdg-desktop-portal.service: Consumed 2.344s CPU time.
Mar 16 13:03:04 pop-os systemd[3117]: xdg-document-portal.service: Main process exited, code=exited, status=20/n/a
Mar 16 13:03:04 pop-os systemd[3117]: xdg-document-portal.service: Failed with result 'exit-code'.
Mar 16 13:03:04 pop-os tracker-miner-fs-3[3171]: OK
Mar 16 13:03:04 pop-os systemd[3117]: tracker-miner-fs-3.service: Consumed 2.543s CPU time.
Mar 16 13:03:05 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-0: disconnected
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-0: Internal DisplayPort
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-0: 2660.0 MHz maximum pixel clock
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0):
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-1: disconnected
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-1: disconnected
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-1: Internal DisplayPort
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-1: 2660.0 MHz maximum pixel clock
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0):
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-2: disconnected
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-2: Internal TMDS
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): DFP-2: 165.0 MHz maximum pixel clock
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0):
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): Chimei innolux corp. (DFP-3): connected
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): Chimei innolux corp. (DFP-3): Internal DisplayPort
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0): Chimei innolux corp. (DFP-3): 2660.0 MHz maximum pixel clock
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (--) NVIDIA(GPU-0):
Mar 16 13:03:05 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:05 pop-os /usr/libexec/gdm-x-session[101402]: (II) NVIDIA(0): Setting mode "DFP-3:nvidia-auto-select"
Mar 16 13:03:06 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:07 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:07 pop-os acpid[812]: client 3540[1000:1000] has disconnected
Mar 16 13:03:07 pop-os acpid[812]: client 101402[0:0] has disconnected
Mar 16 13:03:07 pop-os acpid[812]: client connected from 101402[0:0]
Mar 16 13:03:07 pop-os acpid[812]: 1 client rule loaded
Mar 16 13:03:07 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:71
Mar 16 13:03:07 pop-os /usr/libexec/gdm-x-session[101402]: (II) NVIDIA(0): Setting mode "DFP-3:nvidia-auto-select"
Mar 16 13:03:07 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:09 pop-os kernel: nvidia-modeset: WARNING: GPU:0: Chimei innolux corp. (DP-2): G-SYNC Compatible: EDID min refresh rate invalid, disabling G-SYNC Compatible.
Mar 16 13:03:09 pop-os acpid[812]: client connected from 101402[0:0]
Mar 16 13:03:09 pop-os acpid[812]: 1 client rule loaded
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 14
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:64
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 8
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:70
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 10
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:67
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 13
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:77
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 12
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:76
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 11
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:69
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 9
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:66
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 6
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: (II) systemd-logind: got resume for 13:68
Mar 16 13:03:09 pop-os /usr/libexec/gdm-x-session[101402]: [dix] couldn't enable device 7
Mar 16 13:03:09 pop-os gsd-color[101581]: failed to connect to device: Failed to connect to missing device /org/freedesktop/ColorManager/devices/xrandr_Chimei_Innolux_Corporation_danieljo>
Mar 16 13:03:11 pop-os bluetoothd[924]: src/profile.c:record_cb() Unable to get Hands-Free Voice gateway SDP record: Host is down
mmstick commented 1 year ago

Are you certain this is caused by pipewire rather than the kernel?

DanielJoyce commented 1 year ago

It's pipewire interacting with a known kernel bug. Both are buggy in their own way. Pipewire.in handling HDMI audio sinks for Nvidia adapte HDMI ports and a kernel bug.

The fix is to downgrade pipewire. If I can get clear instructions on how to do that in pop is that would suffice. Or a upgraded kernel which may take longer.

Right now my laptop randomly locks up or fails to suspend.

mmstick commented 1 year ago

Is there an issue on the Pipewire issue board?

DanielJoyce commented 1 year ago

See linked issues in first comment.

https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2960

https://bugzilla.kernel.org/show_bug.cgi?id=216944

DanielJoyce commented 1 year ago

Appears issue may be fixed via Pipewire and kernel update

https://bugzilla.kernel.org/show_bug.cgi?id=216944#c2

My laptop is borderline unusable as a laptop. I have to disable suspending.