CVE-2026-68201: ALSA: timer: drain a slave's callback before its master detaches it
Greg Kroah-Hartman <[email protected]>
| Newsgroups | org.kernel.vger.linux-cve-announce |
|---|---|
| Message-ID | <2026081011-CVE-2026-68201-df47@gregkh> |
From: Greg Kroah-Hartman <[email protected]> Description =========== In the Linux kernel, the following vulnerability has been resolved: ALSA: timer: drain a slave's callback before its master detaches it snd_timer_close_locked() drains the closing instance's own in-flight callback (IFLG_CALLBACK) before freeing it, but not its slaves'. When a master instance is closed, remove_slave_links() clears each slave's ->timer; the slave's own close then reads timer == NULL and takes the branch that skips the drain entirely (snd_timer_stop_slave() also no-ops on a NULL timer). So a slave whose callback is still running when the master is closed is freed underneath the live callback, leading to use-after-free. Drain the slaves too before remove_slave_links() severs them. snd_timer_stop() has already taken this instance off the active list, so no new slave callback can be queued. Take the slaves off the ack list so a pending one can't fire either, then wait for any that is already in flight. The Linux kernel CVE team has assigned CVE-2026-68201 to this issue. Affected and fixed versions =========================== Issue introduced in 6.12 with commit 37745918e0e7575bc40f38da93a99b9fa6406224 and fixed in 6.12.101 with commit cd461bcfcdf8d6b6b5365941c1d3859f8bc77aa0 Issue introduced in 6.12 with commit 37745918e0e7575bc40f38da93a99b9fa6406224 and fixed in 6.18.42 with commit 426c0ff1c433d6030610ad4f9375746dfe931caa Issue introduced in 6.12 with commit 37745918e0e7575bc40f38da93a99b9fa6406224 and fixed in 7.1.6 with commit 2b298997786876b225cff2446e11a0fa6f602f6d Issue introduced in 6.12 with commit 37745918e0e7575bc40f38da93a99b9fa6406224 and fixed in 7.2-rc5 with commit bdefe1346a8e6b8dc8593406dc2617e985fcbcab Please see https://www.kernel.org for a full list of currently supported kernel versions by the kernel community. Unaffected versions might change over time as fixes are backported to older supported kernel versions. The official CVE entry at https://cve.org/CVERecord/?id=CVE-2026-68201 will be updated if fixes are backported, please check that for the most up to date information about this issue. Affected files ============== The file(s) affected by this issue are: sound/core/timer.c Mitigation ========== The Linux kernel CVE team recommends that you update to the latest stable kernel version for this, and many other bugfixes. Individual changes are never tested alone, but rather are part of a larger kernel release. Cherry-picking individual commits is not recommended or supported by the Linux kernel community at all. If however, updating to the latest release is impossible, the individual changes to resolve this issue can be found at these commits: https://git.kernel.org/stable/c/cd461bcfcdf8d6b6b5365941c1d3859f8bc77aa0 https://git.kernel.org/stable/c/426c0ff1c433d6030610ad4f9375746dfe931caa https://git.kernel.org/stable/c/2b298997786876b225cff2446e11a0fa6f602f6d https://git.kernel.org/stable/c/bdefe1346a8e6b8dc8593406dc2617e985fcbcab