Description
In the Linux kernel, the following vulnerability has been resolved: iio: imu: adis16400: fix unprotected debugfs reads adis16400_serial_number_fops is open coded and never calls debugfs_file_get(), so debugfs_remove_recursive() does not wait for a read in progress and unbind frees the iio_dev underneath it. Commit ae1d37a9bb4b ("iio: imu: adis16400: use DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE") converted product_id and flash_count to DEFINE_DEBUGFS_ATTRIBUTE, which protects itself, but moved all three files to debugfs_create_file_unsafe(). serial_number prints three registers as "%.4x-%.4x-%.4x" and DEFINE_DEBUGFS_ATTRIBUTE() formats a single u64, so it cannot be converted without changing what the file returns. adis16475 and adis16550 already use debugfs_create_file() for their open coded files. Use it here too.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
ae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < 48bb3c9b4a2fac64cb17c357418ebfbd4c9ac8ffaffectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < 69cc001761894c65a0eef1bb6df911b39d30d71eaffectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < d32eb2161b452a25b03f915f431bdcb9722cd92caffectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < d3078aaef8af4648f94eeafde4b7b36efd9838d1affectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < e9b4c00f775a915b759b08bfe2c5e806a8301a59affectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < 50e8d70ba0743f88afd7e49f9cebd1841ee677f5affectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < f501302ebb9e1504162351b951fe3ae331c852abaffectedae1d37a9bb4bd8d9091a40d153143e99b115ee37 to < d94787287a113a1326211647d5e0deed1e9de105affected
Linux Linux
Default version status: affected
5.8affected0 to < 5.8unaffected5.10.273 to ≤ 5.10.*unaffected5.15.224 to ≤ 5.15.*unaffected6.1.191 to ≤ 6.1.*unaffected6.6.160 to ≤ 6.6.*unaffected6.12.113 to ≤ 6.12.*unaffected6.18.56 to ≤ 6.18.*unaffected7.2.10 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/48bb3c9b4a2fac64cb17c357418ebfbd4c9ac8ff ↗
- https://git.kernel.org/stable/c/69cc001761894c65a0eef1bb6df911b39d30d71e ↗
- https://git.kernel.org/stable/c/d32eb2161b452a25b03f915f431bdcb9722cd92c ↗
- https://git.kernel.org/stable/c/d3078aaef8af4648f94eeafde4b7b36efd9838d1 ↗
- https://git.kernel.org/stable/c/e9b4c00f775a915b759b08bfe2c5e806a8301a59 ↗
- https://git.kernel.org/stable/c/50e8d70ba0743f88afd7e49f9cebd1841ee677f5 ↗
- https://git.kernel.org/stable/c/f501302ebb9e1504162351b951fe3ae331c852ab ↗
- https://git.kernel.org/stable/c/d94787287a113a1326211647d5e0deed1e9de105 ↗