ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization
In the Linux kernel, the following vulnerability has been resolved: ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization The recent refactoring of xfi driver changed the assignment of atc->daios[] at atc_get_resources(); now it loops over all enum DAIOTYP entries while it looped formerly only a part of them. The problem is that the last entry, SPDIF1, is a special type that is used only for hw20k1 CTSB073X model (as a replacement of SPDIFIO), and there is no corresponding definition for hw20k2. Due to the lack of the info, it caused a kernel crash on hw20k2, which was already worked around by the commit b045ab3dff97 ("ALSA: ctxfi: Fix missing SPDIFI1 index handling"). This patch addresses the root cause of the regression above properly, simply by skipping the incorrect SPDIF1 type in the parser loop. For making the change clearer, the code is slightly arranged, too.
- Products
- Linux
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-31775
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 30 Oct 2026, 11:18 UTC · Revision 2
Source evidence
ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization
core-cve · Original sourcePublished 1 May 2026, 14:15 UTC
In the Linux kernel, the following vulnerability has been resolved: ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization The recent refactoring of xfi driver changed the assignment of atc->daios[] at atc_get_resources(); now it loops over all enum DAIOTYP entries while it looped formerly only a part of them. The problem is that the last entry, SPDIF1, is a special type that is used only for hw20k1 CTSB073X model (as a replacement of SPDIFIO), and there is no corresponding definition for hw20k2. Due to the lack of the info, it caused a kernel crash on hw20k2, which was already worked around by the commit b045ab3dff97 ("ALSA: ctxfi: Fix missing SPDIFI1 index handling"). This patch addresses the root cause of the regression above properly, simply by skipping the incorrect SPDIF1 type in the parser loop. For making the change clearer, the code is slightly arranged, too.
cve:CVE-2026-31775
Linux
Fixed versions: Not specified
Linux
Fixed versions: Not specified
Complete source record
{
"id": "1ba7afb35844b6818ddad40a9c6a4c6c68b47b741e69f51ae428038a836a154f",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-31775",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization",
"summary": "In the Linux kernel, the following vulnerability has been resolved: ALSA: ctxfi: Don't enumerate SPDIF1 at DAIO initialization The recent refactoring of xfi driver changed the assignment of atc->daios[] at atc_get_resources(); now it loops over all enum DAIOTYP entries while it looped formerly only a part of them. The problem is that the last entry, SPDIF1, is a special type that is used only for hw20k1 CTSB073X model (as a replacement of SPDIFIO), and there is no corresponding definition for hw20k2. Due to the lack of the info, it caused a kernel crash on hw20k2, which was already worked around by the commit b045ab3dff97 (\"ALSA: ctxfi: Fix missing SPDIFI1 index handling\"). This patch addresses the root cause of the regression above properly, simply by skipping the incorrect SPDIF1 type in the parser loop. For making the change clearer, the code is slightly arranged, too.",
"evidence": "cve:CVE-2026-31775",
"products": [
{
"name": {
"value": "Linux",
"evidence": "/containers/cna/affected/0/product"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
},
{
"name": {
"value": "Linux",
"evidence": "/containers/cna/affected/1/product"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2026-31775",
"aliases": [
"CVE-2026-31775"
],
"metrics": [],
"affected": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "88cc09bb70651917ef8b7095a05a21a9ca014c94",
"lessThan": "7fca3600e79e9f8bac1ebc10af9ff20a35d6cccb",
"versionType": "git"
},
{
"status": "affected",
"version": "a2dbaeb5c61ef110ceefe0d48fe94d428d3bcf16",
"lessThan": "a79c4c42057818bd9de45d2627464b4f0e02196a",
"versionType": "git"
},
{
"status": "affected",
"version": "a2dbaeb5c61ef110ceefe0d48fe94d428d3bcf16",
"lessThan": "75dc1980cf48826287e43dc7a49e310c6691f97e",
"versionType": "git"
},
{
"status": "affected",
"version": "6.18.57",
"lessThan": "6.18.59",
"versionType": "semver"
}
],
"programFiles": [
"sound/pci/ctxfi/ctatc.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "6.19"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "6.19",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.18.59",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "6.19.12",
"versionType": "semver",
"lessThanOrEqual": "6.19.*"
},
{
"status": "unaffected",
"version": "7.0",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"sound/pci/ctxfi/ctatc.c"
],
"defaultStatus": "affected"
}
],
"modified": "2026-10-26T15:12:57.000Z",
"provider": "cve",
"references": [
"https://git.kernel.org/stable/c/7fca3600e79e9f8bac1ebc10af9ff20a35d6cccb",
"https://git.kernel.org/stable/c/a79c4c42057818bd9de45d2627464b4f0e02196a",
"https://git.kernel.org/stable/c/75dc1980cf48826287e43dc7a49e310c6691f97e"
],
"provider_metadata": {
"cna": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-10-26T15:12:57.000Z"
}
}
},
"related_cves": [
{
"value": "CVE-2026-31775",
"evidence": "/cveMetadata/cveId"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-cve",
"document_id": 314023,
"published_at": "2026-05-01T14:15:03.664+00:00"
}