Description
In the Linux kernel, the following vulnerability has been resolved:

hwmon: (lm90) Stop work before releasing hwmon device

Sashiko reports:

In lm90_probe(), the devm action to cancel the alert_work and report_work
(lm90_restore_conf) is registered in lm90_init_client() before
devm_hwmon_device_register_with_info() is called.

Because devm executes cleanup actions in reverse order during module
unbind or probe failure, the hwmon device is unregistered and freed first.

If lm90_alert_work() or lm90_report_alarms() runs in the window between
the hwmon device being freed and the delayed works being cancelled,
lm90_update_alarms() will dereference the freed data->hwmon_dev here.

Fix the problem by canceling the workers separately after registering
the hwmon device and before registering the interrupt handler. This ensures
that the workers are canceled after interrupts are disabled and before
the hwmon device is released. Add "shutdown" flag to indicate that device
shutdown is in progress to prevent workers from being re-armed.
Published: 2026-07-19
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel’s lm90 hardware monitoring driver contains a use‑after‑free flaw. During probe, a cleanup action is registered before the device is fully initialized, so the driver can be freed while delayed work items are still pending. If any work is executed after the device is released, the code dereferences freed memory and corrupts kernel data, leading to a crash and denial of service.

Affected Systems

All Linux kernel installations that ship the lm90 driver without the commit that corrects the cleanup order are affected. The vulnerability applies to both modules compiled into the kernel and those loaded dynamically, and it is present in all kernel versions that have not yet incorporated the fix.

Risk and Exploitability

The CVSS score of 5.5 indicates moderate severity, and the EPSS score below 1% suggests a low likelihood of exploitation. The issue is not listed in CISA KEV. The CVE description does not specify the privilege level or attack vector required to trigger the use‑after‑free; it only notes that work items may execute after the hwmon device has been freed. It is uncertain whether a local or remote attacker could trigger re‑arming of the workers or if any existing privilege escalation is required. Therefore, the exact exploitability remains unconfirmed.

Generated by OpenCVE AI on July 30, 2026 at 20:57 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the kernel to a version that contains the corrected lm90 driver cleanup logic from the latest commit.
  • If an update is not yet available for your distribution, apply the vendor‑provided patch to the lm90 driver and rebuild the kernel.
  • Temporarily disable or blacklist the lm90 module so that the vulnerable code path is not loaded until the patch is applied.

Generated by OpenCVE AI on July 30, 2026 at 20:57 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Mon, 20 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Sun, 19 Jul 2026 16:15:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: hwmon: (lm90) Stop work before releasing hwmon device Sashiko reports: In lm90_probe(), the devm action to cancel the alert_work and report_work (lm90_restore_conf) is registered in lm90_init_client() before devm_hwmon_device_register_with_info() is called. Because devm executes cleanup actions in reverse order during module unbind or probe failure, the hwmon device is unregistered and freed first. If lm90_alert_work() or lm90_report_alarms() runs in the window between the hwmon device being freed and the delayed works being cancelled, lm90_update_alarms() will dereference the freed data->hwmon_dev here. Fix the problem by canceling the workers separately after registering the hwmon device and before registering the interrupt handler. This ensures that the workers are canceled after interrupts are disabled and before the hwmon device is released. Add "shutdown" flag to indicate that device shutdown is in progress to prevent workers from being re-armed.
Title hwmon: (lm90) Stop work before releasing hwmon device
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-07-19T15:39:26.071Z

Reserved: 2026-07-19T07:54:57.028Z

Link: CVE-2026-64038

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64038 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-07-30T21:00:22Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference