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

hwmon: (pwm-fan) Stop RPM timer before freeing tach data

sample_timer() rearms the RPM timer and accesses the devm-managed
ctx->tachs and ctx->pulses_per_revolution arrays. The cleanup action
which stops the timer is registered before those arrays are allocated.

Since devres releases entries in reverse order, driver detach can free
the arrays before pwm_fan_cleanup() shuts down the timer. A timer expiry
in that window accesses the freed tach data.

With a KASAN kernel, a test-only kprobe delayed entry to
pwm_fan_cleanup() while normal sysfs unbind ran. Each of three runs
reported three four-byte reads and two four-byte writes in sample_timer()
after its backing devm allocations had been freed. The helper did not
invoke the timer callback, cleanup actions or free functions.

With the fix, three matching unbind runs completed without KASAN, BUG,
WARNING, Oops or panic. Instrumentation confirmed that timer retirement
completed before the first timer backing allocation was released.

Split timer retirement from the power cleanup and register its devres
action after the timer backing data and IRQ actions are installed. This
preserves the early power rollback action while ensuring the timer is
retired before its backing data is released. Use timer_shutdown_sync()
because the callback can rearm itself.
Published: 2026-10-06
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Kernel use‑after‑free that can cause a crash
Action: Patch
AI Analysis

Impact

A race condition in the Linux kernel’s hwmon pwm‑fan driver allows the RPM timer to fire after the tachometer data arrays have been freed. The timer callback then accesses deallocated memory, creating a use‑after‑free flaw that can corrupt kernel memory and lead to a panic. The CVE description states that the flaw is triggered only during a brief window while the driver is unbinding and the timer is still active, and no information is provided that an attacker can influence the content of the freed data or force the timer to execute in a controlled way.

Affected Systems

All Linux kernel releases that include the default hwmon pwm‑fan driver before the recorded fix are affected. Distributions shipping an unpatched kernel that contains the vulnerable code are therefore at risk; the generic CPE entry indicates the issue is not limited to a particular vendor or kernel version.

Risk and Exploitability

The EPSS score is below 1 % and the vulnerability is not listed in CISA’s KEV catalog, implying a low likelihood of exploitation in the wild. The race window is very narrow and requires a local context where the driver can be unbound while the timer remains active, limiting the attack vector to local crash or denial of service. The CVSS score of 5.5 reflects a moderate severity, primarily due to the potential for system instability rather than privilege escalation or data exposure.

Generated by OpenCVE AI on October 9, 2026 at 05:26 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that includes the pwm‑fan race‑condition fix
  • Reboot the system after the kernel update so the patched version is loaded
  • If an immediate kernel update cannot be applied, unload or disable the pwm_fan driver (for example, with modprobe -r pwm_fan or by unbinding the device via sysfs) until the patch is installed

Generated by OpenCVE AI on October 9, 2026 at 05:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4850-1 linux-6.12 security update
Debian DSA Debian DSA DSA-6568-1 linux security update
History

Wed, 21 Oct 2026 13:15:00 +0000


Fri, 09 Oct 2026 03:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Fri, 09 Oct 2026 00: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


Wed, 07 Oct 2026 06:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Wed, 07 Oct 2026 05:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Tue, 06 Oct 2026 12:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Tue, 06 Oct 2026 09:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: hwmon: (pwm-fan) Stop RPM timer before freeing tach data sample_timer() rearms the RPM timer and accesses the devm-managed ctx->tachs and ctx->pulses_per_revolution arrays. The cleanup action which stops the timer is registered before those arrays are allocated. Since devres releases entries in reverse order, driver detach can free the arrays before pwm_fan_cleanup() shuts down the timer. A timer expiry in that window accesses the freed tach data. With a KASAN kernel, a test-only kprobe delayed entry to pwm_fan_cleanup() while normal sysfs unbind ran. Each of three runs reported three four-byte reads and two four-byte writes in sample_timer() after its backing devm allocations had been freed. The helper did not invoke the timer callback, cleanup actions or free functions. With the fix, three matching unbind runs completed without KASAN, BUG, WARNING, Oops or panic. Instrumentation confirmed that timer retirement completed before the first timer backing allocation was released. Split timer retirement from the power cleanup and register its devres action after the timer backing data and IRQ actions are installed. This preserves the early power rollback action while ensuring the timer is retired before its backing data is released. Use timer_shutdown_sync() because the callback can rearm itself.
Title hwmon: (pwm-fan) Stop RPM timer before freeing tach data
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-10-21T12:54:52.698Z

Reserved: 2026-09-25T10:25:14.324Z

Link: CVE-2026-98198

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-06T09:18:05.440

Modified: 2026-10-21T13:21:25.537

Link: CVE-2026-98198

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-06T00:00:00Z

Links: CVE-2026-98198 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-09T05:30:08Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference