All vulnerabilities
CVE-2026-98940

Linux: ASoC: qcom: lpass-cpu: use DAI table index for playback constraints

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)No scoreNo FIRST EPSS score in this snapshot yet
Fixed in775df6a27e8433e2414124472938009b958f9a77Also 6833f1893ac2ec40016c348779af63debf3700d2, 69d2b7a4c115181629eb14d800aecc3e7de3f7fbCVE List
Published23 Oct 2026Updated 23 Oct 2026CVE List

What fixes it

  • 775df6a27e8433e2414124472938009b958f9a77LinuxCVE List
  • 6833f1893ac2ec40016c348779af63debf3700d2LinuxCVE List
  • 69d2b7a4c115181629eb14d800aecc3e7de3f7fbLinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

ASoC: qcom: lpass-cpu: use DAI table index for playback constraints

The DAI ID is a hardware port ID and is not necessarily the index of the corresponding entry in variant->dai_driver.

When configuring a DAI with LPAIF_I2SCTL_MODE_QUAD01, the probe code currently uses dai_id to index variant->dai_driver. This is incorrect for platforms where DAI IDs are sparse. For example, the IPQ806x MI2S DAI has ID 4 while it is the only entry in the DAI driver table. If that DAI is configured for QUAD01 and probe reaches this branch, the code writes beyond that single entry via dai_driver[4] instead of updating the DAI being processed.

Use the loop index i when updating the current DAI's playback channel constraints, while retaining dai_id for indexing the hardware-port specific playback SD-line mode array.

This fixes the incorrect DAI table access for platforms where the DAI ID does not match its position in the driver table.

Text from CVE List

Affected versions 12

  • Linuxaffected: c223f41c1a52bfe10f1d3311679b1d1f9813e500 before 775df6a27e8433e2414124472938009b958f9a77CVE List
  • Linuxaffected: c223f41c1a52bfe10f1d3311679b1d1f9813e500 before 6833f1893ac2ec40016c348779af63debf3700d2CVE List
  • Linuxaffected: c223f41c1a52bfe10f1d3311679b1d1f9813e500 before 69d2b7a4c115181629eb14d800aecc3e7de3f7fbCVE List
  • Linuxaffected: c223f41c1a52bfe10f1d3311679b1d1f9813e500 before f11336e6d3cd9e28e5cdf1cb8a6171e7c3eff4e4CVE List
  • Linuxaffected: c223f41c1a52bfe10f1d3311679b1d1f9813e500 before ca51771c8efde5df05476ac98dd1b2af4e2b149fCVE List
  • Linuxaffected: 5.14CVE List
  • Linuxunaffected: all versions before 5.14CVE List
  • Linuxunaffected: 6.6.160 through 6.6.*CVE List
  • Linuxunaffected: 6.12.113 through 6.12.*CVE List
  • Linuxunaffected: 6.18.56 through 6.18.*CVE List
  • Linuxunaffected: 7.2.10 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 5