Executive brief
A vulnerability in the Linux kernel's audio subsystem can cause the system to freeze or become unresponsive. This occurs when specific audio driver operations trigger a 'deadlock,' where the system gets stuck waiting for a resource it already holds. This could lead to a denial of service, impacting system availability and requiring a reboot to recover.
Technical details
A deadlock exists in the ASoC fsl_xcvr driver within the fsl_xcvr_mode_put() function. The vulnerability was introduced by an earlier attempt to fix a perceived missing lock; however, the function is called from snd_ctl_elem_write(), which already holds the controls_rwsem write lock. Attempting to acquire a read lock on the same semaphore while holding the write lock in the same thread results in a deadlock and a hung task. This is a local denial-of-service vulnerability. The fix involves reverting the unnecessary locking logic in sound/soc/fsl/fsl_xcvr.c.
Affected products
- Linux Linux Kernel f51424872760 and later
Timeline
- 2026-02-10: patched: Initial patch developed to revert the problematic locking logic.
- 2026-06-03: disclosed: CVE-2026-46262 published.
References
- https://git.kernel.org/stable/c/0886dc6326c3cc596799c4340d342898301cf52a
- https://git.kernel.org/stable/c/29b2fbe3498da3681a01b34e4a2259f8a1b89448
- https://git.kernel.org/stable/c/30ffcad5edb56947dccc26f6816ab7a55b21a711
- https://git.kernel.org/stable/c/9a2a5da002775376498e8814df4a87cd629a3a0c
- https://git.kernel.org/stable/c/9f16d96e1222391a6b996a1b676bec14fb91e3b2
- https://git.kernel.org/stable/c/ae5a70e3e87c28edbaf9939cfef1bcbd9615420f
- https://git.kernel.org/stable/c/b0f74f5d24fe3c73ef1369a811891198b54c1e8e