CVE-2026-98157: EDAC/device_sysfs: Use kstrtouint() for poll_msec to prevent truncation

Published Sep 25, 2026
·
Updated

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

EDAC/devicesysfs: Use kstrtouint() for pollmsec to prevent truncation

The pollmsec sysfs store file uses simplestrtoul() which accepts an unsigned long, but the target field (pollmsec) is unsigned int. On 64-bit systems, a value > UINTMAX is silently truncated when stored.

Fix the mismatch by using kstrtouint() instead. This rejects values larger than UINTMAX at parse time, making truncation impossible. Also add a check for value < 1 to reject the 0-delay case, which would cause the poll work to spin without delay and consume 100% CPU.

Affected Software

1 affected component
Linux Linux kernel

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Use kstrtouint() instead of simple_strtoul() for the poll_msec sysfs store file, and reject values less than 1 to prevent truncation and zero-delay spinning.

    EDAC/device_sysfs poll_msec parsing = kstrtouint(); reject values < 1

Event History

Sep 25, 2026
CVE Published
via MITRE·10:36 AM
Data Sourced
via MITRE·10:36 AM
Description

Frequently Asked Questions

1

What access is needed to trigger the issue?

An attacker or user must be able to write a value to the EDAC device poll_msec sysfs store file. The issue is triggered by supplying either a value larger than UINT_MAX, which can be truncated on 64-bit systems, or zero, which creates a no-delay polling loop.

2

What is the practical impact of setting poll_msec to zero?

A zero value causes the poll work to run without delay. This can spin continuously and consume 100% CPU.

3

How does the fix change accepted poll_msec values?

The corrected code parses the value as an unsigned int and rejects values larger than UINT_MAX. It also rejects values below 1, preventing zero-delay polling.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203