CVE-2026-64205
Received Received - Intake

Hardware State Machine Corruption in Linux Kernel i2c-i801 Driver

Vulnerability report for CVE-2026-64205, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-20

Last updated on: 2026-07-20

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: i2c: i801: fix hardware state machine corruption in error path A severe livelock and subsequent Hung Task panic were observed in the i2c-i801 driver during concurrent Fuzzing. The crash is caused by an unconditional hardware register cleanup in the error handling path of i801_access(). When i801_check_pre() fails (e.g., returning -EBUSY because the SMBus controller is actively used by BIOS/ACPI), the kernel does not actually acquire the hardware ownership. However, the code jumps to the 'out' label and executes: iowrite8(SMBHSTSTS_INUSE_STS | STATUS_FLAGS, SMBHSTSTS(priv)); This forcefully clears the INUSE_STS lock and resets the hardware status flags without owning the controller. Doing so interrupts ongoing BIOS/ACPI transactions and totally corrupts the SMBus hardware state machine. Consequently, all subsequent i801_access() calls fail at the pre-check stage, triggering an endless stream of "SMBus is busy, can't use it!" error logs. Over a slow serial console, this printk flood monopolizes the CPU (Console Livelock), starving other processes trying to acquire the mmap_lock down_read semaphore, ultimately triggering the hung task watchdog. Fix this by moving the 'out' label below the hardware register cleanup. If i801_check_pre() fails, we safely bypass the iowrite8() and only release the software locks (pm_runtime and mutex), strictly adhering to the rule of not releasing resources that were never acquired.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-20
Last Modified
2026-07-20
Generated
2026-07-21
AI Q&A
2026-07-20
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in the Linux kernel affects the i2c-i801 driver, causing a livelock and system hang. When an error occurs during SMBus access, the driver incorrectly clears hardware status flags even if it never acquired the controller. This corrupts the hardware state machine, leading to repeated errors and a hung task panic.

Detection Guidance

This vulnerability affects the i2c-i801 driver in the Linux kernel and manifests as a livelock or hung task panic due to SMBus hardware state corruption. Detection requires checking kernel logs for repeated 'SMBus is busy' errors or hung task warnings. Monitor logs with 'dmesg | grep -i smbus' or 'journalctl -k | grep -i smbus'.

Impact Analysis

This vulnerability can cause system freezes or crashes, especially during concurrent operations. It may lead to unresponsive systems, data loss, or require a reboot to recover. Systems using the i2c-i801 driver are particularly affected.

Compliance Impact

This vulnerability does not directly affect compliance with standards like GDPR or HIPAA. It is a low-level Linux kernel driver issue causing system instability but does not involve data breaches or unauthorized access to sensitive information.

Mitigation Strategies

Apply the kernel patch that moves the 'out' label below hardware register cleanup. Update to a fixed kernel version. If immediate patching is not possible, avoid concurrent SMBus operations and monitor for hung tasks. Disable SMBus if not critical.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-64205. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart