CVE-2026-64149
Last modified
CVE-2026-64149 is a vulnerability of currently unknown severity. In the Linux kernel, the following vulnerability has been resolved: dma-mapping: move dma_map_resource() sanity check into debug code dma_map_resource() uses pfn_valid() to ensure the range is not RAM. However, pfn_valid() only checks for availability of the memory map for a PFN but it does not ensure that the PFN is actually backed by RAM. On ARM64 with SPARSEMEM (128MB section granularity), MMIO addresses that share a section with RAM will falsely trigger the WARN_ON_ONCE and cause dma_map_resource() to return DMA_MAPPING_ERROR. This causes a WARNING on Raspberry Pi 4 during spi_bcm2835 probe because the SPI FIFO register (0xfe204004) falls in the same sparsemem section as the end of RAM (0xf8000000-0xfbffffff), both in section 31 (0xf8000000-0xffffffff). Move the sanity check from dma_map_resource() into debug_dma_map_phys() and replace the unreliable pfn_valid() with pfn_valid() && !PageReserved(), which correctly identifies actual usable RAM without false positives for MMIO regions that happen to have struct pages. Since dma_map_resource() is dma_map_phys(DMA_ATTR_MMIO), the check applies equally to both APIs. EPSS estimates a 0.17% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: dma-mapping: move dma_map_resource() sanity check into debug code dma_map_resource() uses pfn_valid() to ensure the range is not RAM. However, pfn_valid() only checks for availability of the memory map for a PFN but it does not ensure that the PFN is actually backed by RAM. On ARM64 with SPARSEMEM (128MB section granularity), MMIO addresses that share a section with RAM will falsely trigger the WARN_ON_ONCE and cause dma_map_resource() to return DMA_MAPPING_ERROR. This causes a WARNING on Raspberry Pi 4 during spi_bcm2835 probe because the SPI FIFO register (0xfe204004) falls in the same sparsemem section as the end of RAM (0xf8000000-0xfbffffff), both in section 31 (0xf8000000-0xffffffff). Move the sanity check from dma_map_resource() into debug_dma_map_phys() and replace the unreliable pfn_valid() with pfn_valid() && !PageReserved(), which correctly identifies actual usable RAM without false positives for MMIO regions that happen to have struct pages. Since dma_map_resource() is dma_map_phys(DMA_ATTR_MMIO), the check applies equally to both APIs. Any non-reserved page represents kernel memory to a sufficient degree that using DMA_ATTR_MMIO on it is almost certainly wrong and risks breaking coherency on non-coherent platforms. ZONE_DEVICE pages used for PCI P2P DMA (MEMORY_DEVICE_PCI_P2PDMA) have PageReserved set, so they will not trigger a false positive. The check no longer blocks the mapping and uses err_printk() to integrate with dma-debug filtering.
Metrics
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= f7326196a781622b33bfbdabb00f5e72b5fb5679, < 181e67bc11c5ec5b87c6c512c2078752b23ca8d4; >= f7326196a781622b33bfbdabb00f5e72b5fb5679, < 004a777879ff629f6e0ca3d09ad09fa3452bcc4d; >= f7326196a781622b33bfbdabb00f5e72b5fb5679, < af0c3f05866237f7592219bfe05387bc3bfc99b5 |
| Linux | Linux | 6.18 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-64149?
How severe is CVE-2026-64149?
How do I fix CVE-2026-64149?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-64143In the Linux kernel, the following vulnerability has been re…
- CVE-2026-64144In the Linux kernel, the following vulnerability has been re…
- CVE-2026-64145In the Linux kernel, the following vulnerability has been re…
- CVE-2026-64146In the Linux kernel, the following vulnerability has been re…
- CVE-2026-64147In the Linux kernel, the following vulnerability has been re…
- CVE-2026-64148In the Linux kernel, the following vulnerability has been re…7.5
- CVE-2026-6415The Advanced Custom Fields: Font Awesome plugin for WordPres…6.4
- CVE-2026-64150In the Linux kernel, the following vulnerability has been re…9.8
- CVE-2026-64151In the Linux kernel, the following vulnerability has been re…8.4
- CVE-2026-64152In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-64153In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-64154In the Linux kernel, the following vulnerability has been re…
Are you affected by CVE-2026-64149?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
