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.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.18-develUpgrade kernel6.18-modules-extra-commonUpgrade kernel-livepatch-6.18.35-68.127Upgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18Upgrade kernel6.18-headersUpgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.18-tools-develUpgrade kernel6.18-tools-debuginfoUpgrade kernel6.18-toolsUpgrade bpftool6.18Upgrade perf6.18Upgrade perf6.18-debuginfoUpgrade microvm-kernel6.18Upgrade python3-perf6.18Upgrade bpftool6.18-debuginfoUpgrade kernel6.18-modules-extraUpgrade python3-perf6.18-debuginfoUpgrade kernel6.18-debuginfo | Aug 10, 2026 | Jul 19, 2026 |
| Ubuntu | — | Upgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-gcp-7.0Upgrade linux-image-awsUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-oracleUpgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-raspi-7.0Upgrade linux-image-azure-fdeUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-nvidia-7.0Upgrade linux-image-azure-7.0Upgrade linux-image-7.0.0-1014-azureUpgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-aws-7.0Upgrade linux-image-nvidia-bosUpgrade linux-image-ibmUpgrade linux-image-7.0.0-1009-awsUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-oracle-64kUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-7.0.0-1010-azureUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-ibm-7.0Upgrade linux-image-azure-fde-7.0Upgrade linux-image-aws-64k-7.0Upgrade linux-image-raspi-realtimeUpgrade linux-image-raspiUpgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-nvidia-bos-64kUpgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidiaUpgrade linux-image-gcp-64kUpgrade linux-image-oracle-7.0Upgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-azureUpgrade linux-image-gcpUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-aws-64kUpgrade linux-image-nvidia-64k-hwe-26.04 | Jul 21, 2026 | Jul 20, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub