iio: buffer: serialize buffer teardown with mode claims
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.16, 6.2, 6.6.160, 6.12.113, 6.18.56, and 1 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: iio: buffer: serialize buffer teardown with mode claims Buffer-mode claims hold mlock to guarantee that the device remains in buffer mode until the claim is released. Normal buffer updates take info_exist_lock followed by mlock in iio_update_buffers(). However, iio_device_unregister() disables and deactivates all buffers without taking mlock. This can invalidate buffer state, including active_scan_mask, while a buffer-mode claim is held. Take mlock in iio_disable_all_buffers() so that unregister honors the mode-claim lifetime guarantee. The info_exist_lock -> mlock ordering matches iio_update_buffers().
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 0a8565425afd8ba0e1a0ea73e21da119ee6dacea · fixed in 6a728408ff522b749c2a3c7e68f44e861fa0dbfb; From 0a8565425afd8ba0e1a0ea73e21da119ee6dacea · fixed in 89f3852a28fcf7bab599280cb082baa0675536db; From 0a8565425afd8ba0e1a0ea73e21da119ee6dacea · fixed in b466db9e68b4741af85f6c017e2bb0a2f025053f; From 0a8565425afd8ba0e1a0ea73e21da119ee6dacea · fixed in e63188d77e10c0951bf67da6c295f768fd1abf4b; From 0a8565425afd8ba0e1a0ea73e21da119ee6dacea · fixed in 84bb0fc46ccf6a545b8fdf57cda83770186ed8dd; From 5.15.137 · fixed in 5.16; From 6.1.60 · fixed in 6.2
- Linux Linux
6.2
- KernelLinux
From 6.2.0 · fixed in 6.6.160; From 6.7.0 · fixed in 6.12.113; From 6.13.0 · fixed in 6.18.56; From 6.19.0 · fixed in 7.2.10