CVE-2026-64187: xfs: fail recovery on a committed log item with no regions
In the Linux kernel, the following vulnerability has been resolved:
xfs: fail recovery on a committed log item with no regions
If the first op of a transaction is a bare transaction header (len == sizeof(struct xfstransheader)), xlogrecoveraddtotrans() adds an item but no region, leaving it on ritemq with ricnt == 0 and ribuf == NULL.
The header can be split across op records, so later ops may still add regions; the item is only invalid if the transaction commits with none. The runtime commit path never emits such a transaction, so this only happens on a crafted log. It came from an AI-assisted code audit of the recovery parser.
xlogrecoverreordertrans() calls ITEMTYPE() on the item, which reads (unsigned short )item->ribuf[0].iovbase and faults on the NULL ribuf. Reject it there, before the commit handlers that also read ribuf[0].
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] RIP: 0010:xlogrecoverreordertrans (fs/xfs/xfslogrecover.c:1836) xlogrecovercommittrans (fs/xfs/xfslogrecover.c:2043) xlogrecoverprocessdata (fs/xfs/xfslogrecover.c:2501) xlogdorecoverypass (fs/xfs/xfslogrecover.c:3244) xlogrecover (fs/xfs/xfslogrecover.c:3493) xfslogmount (fs/xfs/xfslog.c:618) xfsmountfs (fs/xfs/xfsmount.c:1034) xfsfsfillsuper (fs/xfs/xfssuper.c:1938) vfsgettree (fs/super.c:1695) pathmount (fs/namespace.c:4161) x64sysmount (fs/namespace.c:4367)
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 6.6.145.2-1 - Configuration
Apply the kernel fix that rejects such committed log items during recovery in xlog_recover_reorder_trans (fs/xfs/xfs_log_recover.c:1836), before commit handlers that read the transaction header fields (to prevent KASAN null-ptr-deref when ri_buf[0] is accessed while ri_buf is NULL).
Linux kernel XFS log recovery Reject committed log item with no regions (ri_cnt==0 / ri_buf==NULL) in xlog_recover_reorder_trans = enabled
Event History
Frequently Asked Questions
What is the severity of CVE-2026-64187?
CVE-2026-64187 has a risk rating of 37, indicating a potential moderate to high impact.
How do I fix CVE-2026-64187?
To fix CVE-2026-64187, update your Linux kernel to the latest version that includes the patch addressing this vulnerability.
What software is affected by CVE-2026-64187?
CVE-2026-64187 affects the Linux kernel, particularly its XFS filesystem implementation.
What does CVE-2026-64187 mean for system integrity?
CVE-2026-64187 may compromise system integrity by affecting the recovery process of transactions in the XFS filesystem.
When was CVE-2026-64187 published?
CVE-2026-64187 was published on July 20, 2026.