CVE-2026-31589: Linux kernel · mm: call ->free_folio() directly in folio_unmap_invalidate()
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 9.8 Critical.
Data as of 12 Nov 2026, 03:32 UTC
Thin evidence
One scorer or none| CNA (Linux) | CVSS 3.1 | 9.8 |
|---|
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 24 Apr 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 11 Nov 2026.
What to do
AI-suggested
A fix has been implemented in the Linux kernel to address this vulnerability by modifying folio_unmap_invalidate() to call free_folio() directly while holding the appropriate lock. Users should apply the official Linux kernel updates that include this patch. Since this is not a cloud service, manual patching is required.
Description
CVE-2026-31589 is a critical use-after-free vulnerability in the Linux kernel's memory management subsystem. It occurs because the function filemap_free_folio() was called without holding a reference or lock on the mapping, leading to potential access of freed memory. The issue was fixed by changing folio_unmap_invalidate() to call the free_folio() function directly, following the pattern used in __remove_mapping().
References
- git.kernel.org/stable/c/efc52947247a21bbf79059539bbbd40f4ea76f00 (opens in a new tab)
- git.kernel.org/stable/c/b667df39d98a7a24be7c2a40ff0863dac1ad2cd7 (opens in a new tab)
- git.kernel.org/stable/c/c330e65ea59c4805d6ab6757c4ddfe8c63acef31 (opens in a new tab)
- git.kernel.org/stable/c/615d9bb2ccad42f9e21d837431e401db2e471195 (opens in a new tab)