CVE-2024-26947: ARM: 9359/1: flush: check if the folio is reserved for no-mapping addresses
In the Linux kernel, the following vulnerability has been resolved:
ARM: 9359/1: flush: check if the folio is reserved for no-mapping addresses
Since commit a4d5613c4dc6 ("arm: extend pfn_valid to take into account
freed memory map alignment") changes the semantics of pfn_valid() to check
presence of the memory map for a PFN. A valid page for an address which
is reserved but not mapped by the kernel[1], the system crashed during
some uio test with the following memory layout:
node 0: [mem 0x00000000c0a00000-0x00000000cc8fffff]
node 0: [mem 0x00000000d0000000-0x00000000da1fffff]
the uio layout is:0xc0900000, 0x100000
the crash backtrace like:
Unable to handle kernel paging request at virtual address bff00000
[...]
CPU: 1 PID: 465 Comm: startapp.bin Tainted: G O 5.10.0 #1
Hardware name: Generic DT based system
PC is at b15_flush_kern_dcache_area+0x24/0x3c
LR is at __sync_icache_dcache+0x6c/0x98
[...]
(b15_flush_kern_dcache_area) from (__sync_icache_dcache+0x6c/0x98)
(__sync_icache_dcache) from (set_pte_at+0x28/0x54)
(set_pte_at) from (remap_pfn_range+0x1a0/0x274)
(remap_pfn_range) from (uio_mmap+0x184/0x1b8 [uio])
(uio_mmap [uio]) from (__mmap_region+0x264/0x5f4)
(__mmap_region) from (__do_mmap_mm+0x3ec/0x440)
(__do_mmap_mm) from (do_mmap+0x50/0x58)
(do_mmap) from (vm_mmap_pgoff+0xfc/0x188)
(vm_mmap_pgoff) from (ksys_mmap_pgoff+0xac/0xc4)
(ksys_mmap_pgoff) from (ret_fast_syscall+0x0/0x5c)
Code: e0801001 e2423001 e1c00003 f57ff04f (ee070f3e)
---[ end trace 09cf0734c3805d52 ]---
Kernel panic - not syncing: Fatal exception
So check if PG_reserved was set to solve this issue.
[1]: https://lore.kernel.org/lkml/Zbtdue57RO0QScJM@linux.ibm.com/
Security readout for executives and security teams
Plain-English summary
CVE-2024-26947 is a Linux kernel ARM crash bug. Under a specific reserved memory and UIO mapping scenario, the kernel can dereference an address it should not and panic. The public record describes availability impact, not data theft or privilege escalation.
Executive priority
Treat as a targeted reliability risk for affected ARM Linux devices. Patch during the next kernel maintenance cycle, sooner for systems where a panic could interrupt safety, operations, or customer service.
Technical view
The ARM flush path used pfn_valid() after its semantics changed to indicate memory-map presence. For reserved, no-mapping addresses, remap_pfn_range() through uio_mmap() could reach cache flush logic and trigger a fatal kernel paging request. The fix checks PG_reserved for the folio before flushing.
Likely exposure
Most relevant to ARM Linux systems using reserved no-map memory and UIO mappings, especially embedded or device-tree platforms. The source does not show exposure for all architectures or all Linux workloads.
Exploitation context
The provided sources show a crash during UIO testing and kernel panic. KEV is false, and the bundle provides no evidence of active exploitation or public weaponization.
Researcher notes
Evidence is limited to the upstream CVE description and stable commit references. No CVSS, CWE, exploit status, or affected distribution package list is provided in the source bundle.
Mitigation direction
Apply a vendor kernel update containing the referenced stable fixes.
Confirm whether your kernel branch includes the PG_reserved check fix.
Prioritize ARM systems exposing UIO mappings or reserved no-map memory.
Check distribution or device vendor guidance for branch-specific backports.
Validation and detection
Inventory ARM Linux kernel versions and downstream vendor builds.
Check kernel source or changelog for the referenced stable commit IDs.
Review device trees for reserved no-map memory regions.
Identify systems allowing UIO mmap access from user processes.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-26947 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.