Description
In the Linux kernel, the following vulnerability has been resolved: hwmon: (adt7470) Fix busy-loop and I2C flooding in update thread When userspace configures 'auto_update_interval' to 0 via sysfs, the background kthread executes schedule_timeout_interruptible(0), which returns immediately. If 'num_temp_sensors' is concurrently or previously set to 0, the msleep_interruptible() delay inside adt7470_read_temperatures() also becomes 0. This combination forces the background thread into a tight, unbounded busy-loop, hogging the CPU and flooding the I2C bus with a continuous stream of transactions. Fix this vulnerability by raising the lower limit of the clamp_val in auto_update_interval_store() from 0 to 500 milliseconds. This guarantees a reasonable minimum sleep window between sensor updates, protecting the system from intentional or accidental I2C bus denial of service.
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
89fac11cb3e7c5860c425dba14845c09ccede39d to < 2c4c4d7cadd10b50b5489183bbbb9eb95f6f8344affected89fac11cb3e7c5860c425dba14845c09ccede39d to < 4dc1518f9cc57c6db99514cafeb02dd7117d5bdaaffected89fac11cb3e7c5860c425dba14845c09ccede39d to < 1325975a2eab265510e6036d8bf0c0068373d332affected89fac11cb3e7c5860c425dba14845c09ccede39d to < 1a42bd72a66205e439db1d1142442b62d393408aaffected89fac11cb3e7c5860c425dba14845c09ccede39d to < 38e6b5ce5794ff09442231cc171c2be5e900bab3affected89fac11cb3e7c5860c425dba14845c09ccede39d to < 82d65f7ef11edcea0228745440b8b4b1f222c34caffected89fac11cb3e7c5860c425dba14845c09ccede39d to < 5ea299c3aa42a827f6a863eeead6de3525bbb17aaffected89fac11cb3e7c5860c425dba14845c09ccede39d to < cb0b7f9c43b0abbd422a7e4c2c85e91db429207caffected
Linux Linux
Default version status: affected
2.6.29affected0 to < 2.6.29unaffected5.10.265 to ≤ 5.10.*unaffected5.15.216 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.151 to ≤ 6.6.*unaffected6.12.103 to ≤ 6.12.*unaffected6.18.44 to ≤ 6.18.*unaffected7.1.8 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/2c4c4d7cadd10b50b5489183bbbb9eb95f6f8344 ↗
- https://git.kernel.org/stable/c/4dc1518f9cc57c6db99514cafeb02dd7117d5bda ↗
- https://git.kernel.org/stable/c/1325975a2eab265510e6036d8bf0c0068373d332 ↗
- https://git.kernel.org/stable/c/1a42bd72a66205e439db1d1142442b62d393408a ↗
- https://git.kernel.org/stable/c/38e6b5ce5794ff09442231cc171c2be5e900bab3 ↗
- https://git.kernel.org/stable/c/82d65f7ef11edcea0228745440b8b4b1f222c34c ↗
- https://git.kernel.org/stable/c/5ea299c3aa42a827f6a863eeead6de3525bbb17a ↗
- https://git.kernel.org/stable/c/cb0b7f9c43b0abbd422a7e4c2c85e91db429207c ↗