Linux · Linux Kernel · CVE-2026-43404
**Name of the Vulnerable Software and Affected Versions**
Linux kernel (affected versions not specified)
**Description**
A livelock or starvation issue exists in the `hmm range fault()` function. When `hmm range fault()` fails a `folio trylock()` call within `do swap page()` while attempting to acquire the lock of a device-private folio for migration to RAM, the function spins until the lock is acquired. If the process holding the lock depends on a work item scheduled on the same CPU as the spinning `hmm range fault()`, the work item may be starved, leading to a permanent livelock. This scenario can occur if the lock-holding process is stuck in `migrate device unmap()` calling `lru add drain all()`, as the latter requires a short work item to run on all online CPUs to complete.
**Recommendations**
Wait for the folio to be unlocked if `folio trylock()` fails in `do swap page()`.