Confirming this is still present on a much newer kernel, with additional detail that may help narrow down the cause.
**System:** Lenovo N42-20 Chromebook, MrChromebox UEFI Full ROM firmware (coreboot), DMI board name "GOOGLE Reks" — same board as the original report. **Kernel:** 7.0.0-30-generic (Linux Mint, Ubuntu 24.04 base) — so this is not specific to the 6.8.x kernel series, it's still present in current mainline-derived kernels. **Symptom:** Audio plays normally for roughly 5-10 minutes (reproducible faster with `speaker-test -D hw:rt5650 -c 2 -t sine`, which typically fails within ~30 seconds), then playback locks into a continuous single tone that persists until the playing application is paused/stopped: ``` Write error: -5,Input/output error xrun_recovery failed: -5,Input/output error Transfer failed: Input/output error ``` **At boot**, before any playback issue occurs, dmesg shows the same UBSAN shift-out-of-bounds traces reported here, in `soc-dapm.c` during `cht-bsw-rt5645` / `snd_soc_sst_cht_bsw_rt5645` probe and during `alsactl`'s subsequent mixer writes: ``` UBSAN: shift-out-of-bounds in .../sound/soc/soc-dapm.c:429:15 shift exponent 16384 is too large for 32-bit type 'unsigned int' Call Trace: dapm_add_path.cold+0x1f/0x6c [snd_soc_core] snd_soc_dapm_add_route+0x373/0x660 [snd_soc_core] ... snd_cht_mc_probe+0x499/0x840 [snd_soc_sst_cht_bsw_rt5645] ``` plus further UBSAN hits in `snd_soc_dapm_put_volsw` triggered by `alsactl` via `snd_ctl_elem_write`/`snd_ctl_ioctl`. Also worth noting: the firmware/topology ABI versions don't match exactly: ``` sof-audio-acpi-intel-byt 808622A8:00: Firmware: ABI 3:22:1 Kernel ABI 3:23:1 sof-audio-acpi-intel-byt 808622A8:00: Topology: ABI 3:22:1 Kernel ABI 3:23:1 ``` This ABI drift between the kernel's SOF core and the shipped `sof-cht-rt5645.tplg`/firmware seems like a plausible source of the corrupted register value that produces the out-of-range shift, though I can't confirm that's the actual root cause. **Attempted workarounds (neither resolved it):** 1. `snd_intel_dspcfg.dsp_driver=1` kernel boot parameter to force the legacy (non-SOF) driver — on this kernel it's ignored outright: ``` intel_sst_acpi 808622A8:00: dsp_driver parameter 1 not supported, using automatic detection sof-audio-acpi-intel-byt 808622A8:00: dsp_driver parameter 1 not supported, using automatic detection ``` 2. Blacklisting all `snd_sof*` modules to force the legacy stack. This successfully prevents SOF from loading at all, and the RT5645 codec driver still probes fine over I2C (`rt5645 i2c-10EC5650:00: Detected Google Chrome platform`), but the `snd_soc_sst_cht_bsw_rt5645` machine driver never binds — even after manually `modprobe`-ing it, no sound card is created (`aplay -l` shows only HDMI outputs, no rt5650 card). It appears the platform device this driver needs is normally only instantiated as a byproduct of the SOF ACPI driver's own matching, and nothing else on this board creates it, so blacklisting SOF results in no usable audio device at all rather than falling back cleanly to the legacy stack. Given both workaround paths are closed off, this does look like it needs an actual fix in the topology/DAPM parsing path (or a DMI quirk enabling proper legacy fallback on this board) rather than something resolvable via boot parameters or module blacklisting. Happy to test patches, provide additional logs (`alsa-info.sh`, full `dmesg`, `acpidump`), or run bisection if that would help. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2092985 Title: UBSAN: Shift-Out-of-Bounds in soc-dapm.c (Linux Kernel 6.8.0 on Ubuntu 24.04) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2092985/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
