Cloudanix VulnDB

CVE-2026-90360

None

CVSS

—

EPSS

0.2%

Published

Sep 17, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in how Linux handles power-saving features for hardware regulators could cause error messages when putting the computer to sleep soon after turning it on.

Exploitation
Requires User Interaction
Attacker needs
Low Privilege
Complexity
Moderate
Impact
Other
Component
OS kernel
Class
Race Condition
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

A non-freezable workqueue allows regulator initialization cleanup work to execute concurrently with system suspend, potentially performing I2C operations on suspended adapters and generating warnings.

Why it matters to the business

May lead to unexpected warnings or minor disruptions during suspend operations on Linux systems, particularly in environments with frequent suspend/resume cycles. Low urgency given no known exploitation.

How an attack unfolds

An attacker with local access could attempt to trigger system suspend at a specific time after boot to induce the race condition, though this primarily results in warnings rather than privilege escalation or data compromise.

How to fix it

Apply the kernel patch that switches the work to system_freezable_wq or update to a patched Linux kernel version.

How to confirm the fix worked

Verify the source code change in regulator core to use system_freezable_wq for init complete work; test suspend/resume cycles post-update to ensure no warnings.

Typical attack path

  1. Boot the system
  2. Wait approximately 30 seconds
  3. Initiate system suspend to race with the delayed work item

How to detect it

Look in kernel logs for warnings from __i2c_transfer related to regulator_init_complete_work during suspend operations.

What your security team should do

  • Prioritize kernel updates in affected distributions
  • Monitor for related kernel updates
  • Test suspend functionality in lab environments

The record

In the Linux kernel, the following vulnerability has been resolved: regulator: core: use system_freezable_wq for init complete work schedule_delayed_work() uses system_wq, which is non-freezable, allowing regulator_init_complete_work to run concurrently with system suspend. This work fires ~30s after boot to disable unused regulators via I2C. When it races with PM suspend, the I2C adapter may already be suspended, triggering a -ESHUTDOWN warning in __i2c_transfer(): WARNING: ... at __i2c_transfer+0x36c/0x3c8 Call trace: __i2c_transfer i2c_transfer regmap_i2c_write _regmap_update_bits regulator_disable_regmap _regulator_do_disable regulator_late_cleanup regulator_init_complete_work_function process_one_work Switch to system_freezable_wq so the work is frozen before any device is suspended, eliminating the race.

Affected packages

Ecosystem Package Introduced Fixed