---
id: CVE-2026-80723
title: 'of: reserved_mem: prevent OOB when too many dynamic regions are defined'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  of: reserved_mem: prevent OOB when too many dynamic regions are defined

  On boot, fdt_scan_reserved_mem() saves each dynamically-placed
  /reserved-memory subnode into a …
severity: high
cvss: 8.4
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 9a0fe62f93ede02c27aaca81112af1e59c8c0979 <
    68d27250c9e81ab7764603e346c2b1017cb53adf
  - >-
    Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 <
    cfa7e2734877330d6c10e0f33953905486c4530c
  - >-
    Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 <
    de8ccbd6bf4efe7a059e2c483789936009e10f42
  - >-
    Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 <
    db3dbdfea1b8f38774419c5c2c14e4b81c48708d
  - Linux >= 6.12.13 < 6.12.103
  - Linux 6.13
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-16T19:21:00.622788Z'
published: '2026-08-28'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T19:26:35.582Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-80723'
references:
  - url: 'https://git.kernel.org/stable/c/68d27250c9e81ab7764603e346c2b1017cb53adf'
  - url: 'https://git.kernel.org/stable/c/cfa7e2734877330d6c10e0f33953905486c4530c'
  - url: 'https://git.kernel.org/stable/c/de8ccbd6bf4efe7a059e2c483789936009e10f42'
  - url: 'https://git.kernel.org/stable/c/db3dbdfea1b8f38774419c5c2c14e4b81c48708d'
tags:
  - cve.org
epss: 0.00132
epssPercentile: 0.0249
ingestedAt: '2026-10-16T19:46:24.302Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

of: reserved_mem: prevent OOB when too many dynamic regions are defined

On boot, fdt_scan_reserved_mem() saves each dynamically-placed
/reserved-memory subnode into a local array of size
MAX_RESERVED_REGIONS.

If the device tree defines more than MAX_RESERVED_REGIONS
dynamically-placed regions, fdt_scan_reserved_mem() writes past the
end of the local array.

Add a bounds check that logs an error and skips the excess regions,
restoring the original behavior.

## Affected

- `Linux >= 9a0fe62f93ede02c27aaca81112af1e59c8c0979 < 68d27250c9e81ab7764603e346c2b1017cb53adf`
- `Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 < cfa7e2734877330d6c10e0f33953905486c4530c`
- `Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 < de8ccbd6bf4efe7a059e2c483789936009e10f42`
- `Linux >= 8a6e02d0c00e7b62e6acb74146878bb91e9e7e31 < db3dbdfea1b8f38774419c5c2c14e4b81c48708d`
- `Linux >= 6.12.13 < 6.12.103`
- `Linux 6.13`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
