CVE-2026-64474

vfio: prevent infinite loop in vfio_mig_get_next_state() on blocked arc

N/A
Published: July 25, 2026 at 08:51 AM UTC
Updated: August 17, 2026 at 05:17 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
N/A
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: vfio: prevent infinite loop in vfio_mig_get_next_state() on blocked arc vfio_mig_get_next_state() walks vfio_from_fsm_table[] one step at a time, looping to skip optional states the device does not support until *next_fsm is supported. A blocked transition is encoded as VFIO_DEVICE_STATE_ERROR, which the trailing return reports as -EINVAL. The skip loop does not account for the ERROR sentinel. state_flags_table[ERROR] is ~0U and vfio_from_fsm_table[ERROR][*] is ERROR, so once *next_fsm becomes ERROR the loop condition stays true and *next_fsm never changes. The blocked arcs STOP_COPY -> PRE_COPY and STOP_COPY -> PRE_COPY_P2P map to ERROR yet pass the support check on a precopy-capable device, causing the loop to spin forever while holding the driver state mutex. This can result in a soft lockup, and a panic with softlockup_panic set. Terminate the skip loop on the ERROR sentinel so a blocked transition falls through to the existing return and reports -EINVAL.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

6.2 ≤ v < 6.12.966.2 ≤ v < 6.18.396.2 ≤ v < 6.6.1456.2 ≤ v < 7.1.46.2 ≤ v < 7.24db52602a6074e9cc523500b8304600ff63e7b856.2
Vendor states this is fixed in 7f2d6b31089e48db4653df832c9a6afdde9a1c29 (fixed)
Vendor states this is fixed in 8e872c07e40d51a66dee7b280a23a460a2e1e3fa (fixed)
Vendor states this is fixed in a26b499b757cfc8bbff1088bb1b844639e250893 (fixed)
Vendor states this is fixed in a3a8afa2f6e7f0dc266d08f02be3f3054241ba47 (fixed)
Vendor states this is fixed in ed7d5599e6c398da74845767cd1e6a8370a160fc (fixed)
Vendor states this is fixed in 6.12.96 (unaffected)
Vendor states this is fixed in 6.18.39 (unaffected)
Vendor states this is fixed in 6.2 (unaffected)
Vendor states this is fixed in 6.6.145 (unaffected)
Vendor states this is fixed in 7.1.4 (unaffected)
Vendor states this is fixed in 7.2 (unaffected)

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

Quick Info

StatusRECEIVED

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card