ALSA: bcd2000: Fix race between rawmidi and disconnect
In the Linux kernel, the following vulnerability has been resolved: ALSA: bcd2000: Fix race between rawmidi and disconnect Although we tried to fix the potential UAF issues at USB disconnect on bcd2000 driver, there is still an overlooked case -- namely, when a rawmidi trigger callback has been already running at USB disconnect handling, the in-flight function (e.g. bcd2000_midi_send()) could still access the URB, because the previous URB NULL-check & clearance was considered only for the URB complete callbacks, but not about the parallel rawmidi operations. For addressing the race, this patch introduced a new spinlock that covers each rawmidi operation as well as the rawmidi handling in the complete callback. The URB is cleared with the lock, so it guarantees that the pending rawmidi task already finished or a NULL check is effective.
CVE-2026-98316
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: cve:CVE-2026-98316
Linux
Source reference: /containers/cna/affected/0/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Linux
Source reference: /containers/cna/affected/1/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "3c00004f134fc819f9d9e202c6a64acde0a1f8d0",
"lessThan": "3b824930259d54f5047ce6b5c97bd20db2fc2b98",
"versionType": "git"
},
{
"status": "affected",
"version": "6c07aad8a7c9ef8ebc4d03a964b882123a349a2e",
"lessThan": "c83d6b0a65f7b71bbabcc91c045dfbffdff6ae76",
"versionType": "git"
},
{
"status": "affected",
"version": "eb482a06791d6168beb8c78cc904ac5a5ed96a55",
"lessThan": "0a7ecf52cb59ed77ec525deb52c496ea8fba10b1",
"versionType": "git"
},
{
"status": "affected",
"version": "7df3194bdb7479cad9199889655a566a2c0c1d1b",
"lessThan": "812ca56867bec3065c2a27f1ff5ce04e2a8bf4f0",
"versionType": "git"
},
{
"status": "affected",
"version": "b06ebc7fe25a6af4a9f6e4a3d4236a4178ad4b01",
"lessThan": "9c8b6eff6e7505c128b615d9a1364ef66fa5c18e",
"versionType": "git"
},
{
"status": "affected",
"version": "459d3a64766f5ca2f1886daeaf24582831a5f5ab",
"lessThan": "221253723dc58bb901c3f27a7659823e63fc598c",
"versionType": "git"
},
{
"status": "affected",
"version": "9af08677aa57debaca5b57c8045c52a83d3dd376",
"versionType": "git"
},
{
"status": "affected",
"version": "5a77febac6faf6da40fbb4555f703eeb91b58130",
"versionType": "git"
},
{
"status": "affected",
"version": "5.10.270",
"lessThan": "5.11",
"versionType": "semver"
},
{
"status": "affected",
"version": "5.15.221",
"lessThan": "5.16",
"versionType": "semver"
}
],
"programFiles": [
"sound/usb/bcd2000/bcd2000.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.1.188",
"lessThan": "6.1.189",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.6.157",
"lessThan": "6.6.158",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.12.109",
"lessThan": "6.12.112",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.18.50",
"lessThan": "6.18.54",
"versionType": "semver"
},
{
"status": "affected",
"version": "7.2.4",
"lessThan": "7.2.8",
"versionType": "semver"
}
],
"programFiles": [
"sound/usb/bcd2000/bcd2000.c"
],
"defaultStatus": "unaffected"
}
]- Related CVEs
- CVE-2026-98316
Source reference:
/cveMetadata/cveId
Publisher severity
No explicit severity was provided.
- Event
- #38395 · Revision 1
- Added to Heist Feed
- Publisher date