Executive brief
A race condition was identified in the Linux kernel's LM90 hardware monitoring driver, which manages temperature sensors in various computer systems. Under specific conditions, simultaneous system requests and hardware alerts could cause the system to become overwhelmed by an 'interrupt storm.' This can lead to significant system performance degradation or a complete loss of responsiveness (denial of service).
Technical details
A race condition exists in the lm90 driver within the Linux kernel due to missing lock protection in the lm90_alert() function. The lm90_alert() function, which executes in the SMBus alert context, attempts to disable the hardware alert line by calling lm90_update_confreg() without acquiring the hwmon_lock. Simultaneously, sysfs write operations (like lm90_write_convrate) may hold the hwmon_lock while temporarily modifying and restoring the configuration register. If an alert occurs during a sysfs write, the sysfs path can overwrite the alert handler's changes, unintentionally re-enabling the hardware alert line while an alarm is active. This results in an interrupt storm. The issue has been resolved by adding proper locking to the lm90_alert() function in the affected kernel versions.
Affected products
- Linux Linux Kernel 5.3 to 7.1
Timeline
- 2026-05-14: other: Fix authored by Guenter Roeck
- 2026-07-24: disclosed: CVE published