Public bug reported:

**analysis made by IA **

reporte-bug-suspension-2026-10-22.md
# Bug report: s2idle resume freezes KWin in snd_hdac_bus_get_response_rirb via 
i915 HDMI audio

**Suggested Launchpad title:**
`HP EliteBook 840 G10 (Raptor Lake-P): s2idle resume freezes KWin in 
snd_hdac_bus_get_response_rirb via i915 HDMI audio`

**Package:** `linux`
**Affected kernel:** `linux-image-7.0.0-38-generic 7.0.0-38.38`
**Distro:** Ubuntu 26.04.1 LTS (Resolute Raccoon)
**Desktop:** KDE Plasma 6.6.6 / KWin 6.6.6 on Wayland
**Machine:** HP EliteBook 840 14 inch G10 Notebook PC (SBKPFV3, board 8B41)
**BIOS:** V70 Ver. 01.13.01 (2026-07-08)
**GPU:** Intel Raptor Lake-P Iris Xe Graphics `[8086:a7a1]`, driver `i915`
**Audio:** SOF `sof-hda-dsp`; codecs Realtek ALC245 (`ehdaudio0D0`) and Intel 
Raptor Lake P HDMI (`ehdaudio0D2`)
**Display:** internal eDP-1 + Samsung LS27FG53x connected via HDMI-A-1
**Sleep mode:** `s2idle` (`/sys/power/mem_sleep` = `[s2idle] deep`)

---

## Problem description

After resuming from `s2idle` suspend with an HDMI monitor connected, the
system sometimes comes back to a black screen with a frozen mouse
pointer. The keyboard does not respond. The only recovery is to hold the
power button.

The problem is intermittent: several suspend/resume cycles can succeed,
and then one cycle freezes. The failing cycle documented here occurred
after a long suspend (about 5.4 hours).

The journal shows that the resume itself completes, but then KWin blocks
for more than 122 seconds inside the HDA HDMI codec runtime resume path,
while holding DRM modeset locks. WirePlumber and an i915 display worker
block on the same locks.

## Steps to reproduce

1. Connect an HDMI monitor (the issue also occurred with a TV connected via 
HDMI, so it is not specific to one monitor).
2. Suspend the laptop (`systemctl suspend` or close the lid).
3. Wait some time (the failing case was after ~5.4 hours; shorter suspends also 
failed on other occasions).
4. Wake the laptop.
5. Sometimes the screen stays black and the pointer is frozen; a hard power-off 
is required.

## Expected behavior

The system should resume to the KDE desktop with the internal and
external displays working, and the HDMI audio device available.

## Actual behavior

The system resumes, but the display pipeline deadlocks. The kernel logs
`blocked for more than 122 seconds` for KWin, WirePlumber and an i915
worker. The screen remains black and the pointer is frozen.

---

## Timeline from the failing boot (`journalctl -b -1`)

```text
2026-10-21 18:43:32  PM: suspend entry (s2idle)
2026-10-22 00:07:03  PM: suspend exit
2026-10-22 00:07:05  kwin_wayland_drm: Atomic modeset test failed! Invalid 
argument
2026-10-22 00:07:08  kwin_wayland_drm: Atomic modeset test failed! Invalid 
argument
2026-10-22 00:09:39  INFO: task wireplumber:2141 blocked for more than 122 
seconds.
2026-10-22 00:09:39  INFO: task kworker/4:0:180668 blocked for more than 122 
seconds.
2026-10-22 00:10:01  sysstat-collect.service still runs (kernel is partially 
alive)
2026-10-22 00:10:15  last log line before forced power-off
2026-10-22 00:11:49  next boot
```

## Relevant kernel stack

`kwin_wayland` (PID 2283) blocks here while holding the DRM modeset
locks:

```text
snd_hdac_bus_get_response_rirb+0x16a/0x2e0 [snd_hda_core]
snd_hdac_bus_get_response+0x43/0x80 [snd_hda_core]
snd_hdac_bus_exec_verb_unlocked+0xb7/0x1f0 [snd_hda_core]
codec_exec_verb+0x7d/0x140 [snd_hda_codec]
snd_hdac_codec_write+0x67/0xb0 [snd_hda_core]
snd_hda_codec_set_power_to_all+0x61/0xe0 [snd_hda_codec]
haswell_set_power_state+0x47/0x70 [snd_hda_codec_intelhdmi]
hda_set_power_state+0x7a/0x140 [snd_hda_codec]
hda_call_codec_resume+0x45/0x1a0 [snd_hda_codec]
hda_codec_runtime_resume+0x30/0x80 [snd_hda_codec]
rpm_resume+0x4d6/0x700
__pm_runtime_resume+0x4e/0x90
snd_hdac_power_up_pm+0x37/0x50 [snd_hda_core]
silent_stream_enable+0x39/0x1c0 [snd_hda_codec_hdmi]
hdmi_present_sense+0x136/0x160 [snd_hda_codec_hdmi]
snd_hda_hdmi_check_presence_and_report+0x5c/0x80 [snd_hda_codec_hdmi]
intel_pin_eld_notify+0xb5/0xe0 [snd_hda_codec_intelhdmi]
intel_audio_codec_enable+0x23f/0x2c0 [i915]
intel_post_plane_update+0x1f0/0x4c0 [i915]
intel_atomic_commit_tail+0x828/0xc40 [i915]
intel_atomic_commit+0x28e/0x2e0 [i915]
drm_atomic_commit+0xad/0xf0
drm_mode_atomic_ioctl+0x7d1/0x910
drm_ioctl+0x309/0x5e0
```

Worker blocked on the same modeset lock:

```text
drm_modeset_lock
intel_dp_retrain_link
intel_dp_link_check
intel_ddi_link_check
intel_encoder_link_check_work_fn [i915]
```

Other blocked tasks:

```text
INFO: task wireplumber:2141 blocked for more than 122 seconds.
INFO: task wireplumber:2141 is blocked on a mutex likely owned by task 
kwin_wayland:2283.
INFO: task kworker/4:0:180668 blocked for more than 122 seconds.
INFO: task kworker/4:0:180668 is blocked on a mutex likely owned by task 
kwin_wayland:2283.
```

## Hardware and driver details

```text
$ cat /sys/power/mem_sleep
[s2idle] deep
```

HDMI codec runtime power state at normal runtime:

```text
/sys/bus/hdaudio/devices/ehdaudio0D2/chip_name: Raptor Lake P HDMI
/sys/bus/hdaudio/devices/ehdaudio0D2/power/control: auto
/sys/bus/hdaudio/devices/ehdaudio0D2/power/runtime_status: suspended
/sys/bus/hdaudio/devices/ehdaudio0D2/power/autosuspend_delay_ms: 1000
```

Audio devices:

```text
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog
card 0: sofhdadsp [sof-hda-dsp], device 3: HDMI1 [LS27FG53x]
card 0: sofhdadsp [sof-hda-dsp], device 4: HDMI2
card 0: sofhdadsp [sof-hda-dsp], device 5: HDMI3
```

Display connectors:

```text
card1-eDP-1/status: connected
card1-HDMI-A-1/status: connected
```

Loaded modules:

```text
i915
snd_hda_intel
snd_hda_codec_hdmi
snd_hda_codec_intelhdmi
snd_sof
snd_sof_pci_intel_tgl
snd_sof_intel_hda_common
snd_soc_skl_hda_dsp
```

Kernel and firmware versions:

```text
Linux 7.0.0-38-generic #38-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 4 09:10:14 UTC 
2026
linux-image-7.0.0-38-generic 7.0.0-38.38
linux-firmware 20260319.git217ca6e4.1ubuntu
```

BIOS:

```text
Vendor: HP
Product: HP EliteBook 840 14 inch G10 Notebook PC
Version: SBKPFV3
Board: 8B41
BIOS: V70 Ver. 01.13.01 (2026-07-08)
```

---

## Analysis

1. The system resumes from `s2idle` and i915 reconfigures the display.
2. KWin issues an atomic modeset commit.
3. During the commit, i915 calls `intel_audio_codec_enable()` to enable HDMI 
audio.
4. The Intel HDMI codec is runtime-suspended, so the HDA core starts a runtime 
resume (`hda_call_codec_resume()`).
5. The codec does not respond to the HDA verb; the task waits in 
`snd_hdac_bus_get_response_rirb()`.
6. KWin holds the DRM modeset locks while waiting, so WirePlumber and an i915 
display worker also block.
7. The display cannot be updated; the user sees a black screen with a frozen 
pointer.

This points to a kernel-level issue involving i915 display/audio power
sequencing and the SOF/HDA HDMI codec runtime PM path, not to a hardware
failure. The laptop had no disk, RAM or thermal problems, and no systemd
units failed.

The same symptom occurred with a TV connected via HDMI before the
current Samsung monitor was used, so the trigger is the HDMI audio path
rather than a specific monitor model.

## Related reports

- Launchpad #2158957 — i915: black internal eDP panel after s2idle resume on HP 
x360 Raptor Lake-P (`8086:a7a1`); PPS `vdd_wakeref` warning; works with the 
`xe` driver.
- Launchpad #2154646 — i915 Arrow Lake: PHY A powerdown failure + DPLL hw state 
mismatch on s2idle resume.
- Launchpad #2150732 — screen stays black after resuming from sleep (Meteor 
Lake, i915).
- Fedora #2463170 — kernel 7.0.x: i915 causes lock screen freeze and display 
deadlock with external displays on Wayland.
- Kernel.org #205229 — HDA/HDMI codec communication hang after s2idle resume on 
Intel.

## Workarounds not yet applied

The following options were documented but not tested yet:

1. Keep the HDMI codec runtime-powered via a udev rule 
(`ATTR{power/control}="on"` on `ehdaudio0D2`), to avoid the runtime resume path 
that hangs.
2. Boot with `mem_sleep_default=deep` to use S3 instead of `s2idle`.
3. Disable HDMI audio (`blacklist snd_hda_codec_hdmi snd_hda_codec_intelhdmi`) 
if HDMI audio is not needed.
4. Test a newer kernel (mainline 7.2+ or an OEM kernel) once a candidate with 
the relevant i915 fixes is available.

## Request

Please investigate the i915 + SOF/HDA HDMI runtime resume interaction on
Raptor Lake-P. It would be useful to know:

- whether this is a known i915 audio power-up sequence issue on Raptor Lake-P,
- whether the `xe` driver avoids the problem on this platform (as reported for 
a related HP Raptor Lake-P system in LP #2158957),
- whether any of the upstream i915 fixes mentioned in the related reports are 
applicable to Ubuntu's 7.0 kernel.

## Attachments

- `journal-boot-anterior-2026-10-22.log` — full kernel log of the failing boot 
(3857 lines).
- `suspend-hang-2026-10-22.log` — extracted suspend/resume/hang window (278 
lines).
- Apport report generated with `ubuntu-bug --save` (if available).
- `analisis-suspension-2026-10-22.md` — detailed Spanish analysis of the 
incident.

---

**Reporter note:** the failure is intermittent, so the attached log
contains one confirmed occurrence. I can run additional suspend/resume
cycles with tracing enabled if the kernel team needs more data.

ProblemType: Bug
DistroRelease: Ubuntu 26.04
Package: linux-image-7.0.0-38-generic 7.0.0-38.38
ProcVersionSignature: Ubuntu 7.0.0-38.38-generic 7.0.14
Uname: Linux 7.0.0-38-generic x86_64
ApportVersion: 2.34.1-0ubuntu0.1
Architecture: amd64
AudioDevicesInUse:
 USER        PID ACCESS COMMAND
 /dev/snd/controlC0:  darmin     2001 F.... pipewire
                      darmin     2007 F.... wireplumber
 /dev/snd/seq:        darmin     2001 F.... pipewire
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
Date: Thu Oct 22 00:38:11 2026
InstallationDate: Installed on 2026-04-22 (182 days ago)
InstallationMedia: Kubuntu 25.10 "Questing Quokka" - Release amd64 (20251007)
MachineType: HP HP EliteBook 840 14 inch G10 Notebook PC
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-7.0.0-38-generic 
root=UUID=6aac1f20-6b0c-4f32-8f9c-72ed0c83b0c8 ro quiet splash
PulseList: Error: command ['pacmd', 'list'] failed with exit code 1: No 
PulseAudio daemon running, or not running as session daemon.
SourcePackage: linux
UpgradeStatus: Upgraded to resolute on 2026-04-26 (179 days ago)
dmi.bios.date: 07/08/2026
dmi.bios.release: 13.1
dmi.bios.vendor: HP
dmi.bios.version: V70 Ver. 01.13.01
dmi.board.name: 8B41
dmi.board.vendor: HP
dmi.board.version: KBC Version 51.47.00
dmi.chassis.type: 10
dmi.chassis.vendor: HP
dmi.ec.firmware.release: 81.71
dmi.modalias: 
dmi:bvnHP:bvrV70Ver.01.13.01:bd07/08/2026:br13.1:efr81.71:svnHP:pnHPEliteBook84014inchG10NotebookPC:pvrSBKPFV3:rvnHP:rn8B41:rvrKBCVersion51.47.00:cvnHP:ct10:cvr:sku846V7LT#ABM:pfa103C_5336ANHPEliteBook:
dmi.product.family: 103C_5336AN HP EliteBook
dmi.product.name: HP EliteBook 840 14 inch G10 Notebook PC
dmi.product.sku: 846V7LT#ABM
dmi.product.version: SBKPFV3
dmi.sys.vendor: HP

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug resolute wayland-session

** Attachment added: "all logs and extra info (analisys by IA in spanish)"
   
https://bugs.launchpad.net/bugs/2171827/+attachment/6011497/+files/evidencia-suspension-2026-10-22.tar.gz

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2171827

Title:
  HP EliteBook 840 G10 (Raptor Lake-P): s2idle resume freezes KWin in
  snd_hdac_bus_get_response_rirb via i915 HDMI audio

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2171827/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to