CVE-2026-80525

Source
https://cve.org/CVERecord?id=CVE-2026-80525
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80525.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-80525
Downstream
Published
2026-08-26T14:37:04Z
Modified
2026-08-28T11:48:23Z
Summary
ASoC: SOF: ipc4-topology: Refresh copier IPC payload before widget setup
Details

In the Linux kernel, the following vulnerability has been resolved:

ASoC: SOF: ipc4-topology: Refresh copier IPC payload before widget setup

The ipc_config_data buffer for copier widgets is built once during ipc_prepare (called from sof_pcm_setup_connected_widgets) and cached for reuse. For host copiers this buffer contains the copier_data with gtw_cfg.node_id (host DMA ID). For DAI copiers it additionally includes a dma_config_tlv trailer with stream_id and dma_channel_id for HDA link DMA.

On suspend/resume, both host and link DMA streams are released and re-allocated with potentially different stream tags. The underlying copier_data and dma_config_tlv structures are correctly updated by host_config and sdw_hda_dai_hw_params respectively. However, since the widget list (spcm->stream[].list) persists across suspend, sof_pcm_hw_params skips sof_pcm_setup_connected_widgets and ipc_prepare never runs again to rebuild ipc_config_data. The stale cached payload is then sent to firmware with boot-time DMA channel assignments, causing DMA channel conflicts that lead to firmware errors and crashes.

Fix this by refreshing copier_data and dma_config_tlv portions of ipc_config_data in sof_ipc4_widget_setup right before the IPC message is sent. This ensures the payload always reflects the current DMA state regardless of whether ipc_prepare ran.

For DAI copiers, the gtw_cfg.config_length in copier_data is temporarily inflated to include the TLV size (matching the ipc_config_data layout) before copying, then restored, mirroring what sof_ipc4_prepare_copier_module does when first building the buffer.

Database specific
{
    "cna_assigner":  "Linux",
    "osv_generated_from":  "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80525.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
e9c6b118de1afc1d32a4eb3bc9f3d114d4fe0f1a
Fixed
decb87e76716d11d846c9c055e309c8ff90d7656
Fixed
2a7d8fc0fd50e7a2020989d9840cabb74c0282e3
Fixed
574498e56024082a0da68474ad4526d250732411
Fixed
0c0e418dbcf0582bf80d8dbfd9b306607c065992

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80525.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.10.0
Fixed
6.12.105
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.46
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.1.10

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-80525.json"