CVE-2026-64481: ALSA: hda/cs35l41: Fix firmware load work teardown
Greg Kroah-Hartman <[email protected]> Sat, 25 Jul 2026 10:51:38 +0200
| Newsgroups | org.kernel.vger.linux-cve-announce |
|---|---|
| Message-ID | <2026072548-CVE-2026-64481-d8df@gregkh> |
From: Greg Kroah-Hartman <[email protected]> Description =========== In the Linux kernel, the following vulnerability has been resolved: ALSA: hda/cs35l41: Fix firmware load work teardown cs35l41_hda creates ALSA controls whose private data points at the cs35l41_hda object. The firmware load control can also queue fw_load_work. Those controls are not removed on component unbind, and device remove only cancels fw_load_work through cs35l41_remove_dsp(). That helper is skipped when halo_initialized is false. With firmware_autostart disabled, a firmware load can be requested before the DSP has been initialized. If the component or device is removed before the queued work runs, the worker can run after teardown and dereference driver state that is no longer valid. Track the created controls and remove them on unbind so no new control callback can reach the driver data or queue more work. Then cancel fw_load_work to drain any request that was already queued. Also cancel the work unconditionally during device remove before runtime PM teardown. The Linux kernel CVE team has assigned CVE-2026-64481 to this issue. Affected and fixed versions =========================== Issue introduced in 6.0 with commit 47ceabd99a28399f8971f4ca0a37ebc0a21dd2a8 and fixed in 6.12.97 with commit 8947215c0136c9d905e4a46d824824f8b48a2e5b Issue introduced in 6.0 with commit 47ceabd99a28399f8971f4ca0a37ebc0a21dd2a8 and fixed in 6.18.39 with commit ce0a903d0591e3e2c790c5b628802b08d1b287cc Issue introduced in 6.0 with commit 47ceabd99a28399f8971f4ca0a37ebc0a21dd2a8 and fixed in 7.1.4 with commit d6a40a4d083ef74d00c8f9516cb5ff07ac70720b Issue introduced in 6.0 with commit 47ceabd99a28399f8971f4ca0a37ebc0a21dd2a8 and fixed in 7.2-rc1 with commit b65020d5398f499c09498c9786dba6d67ae57664 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-64481 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/hda/codecs/side-codecs/cs35l41_hda.c sound/hda/codecs/side-codecs/cs35l41_hda.h 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/8947215c0136c9d905e4a46d824824f8b48a2e5b https://git.kernel.org/stable/c/ce0a903d0591e3e2c790c5b628802b08d1b287cc https://git.kernel.org/stable/c/d6a40a4d083ef74d00c8f9516cb5ff07ac70720b https://git.kernel.org/stable/c/b65020d5398f499c09498c9786dba6d67ae57664