---
id: CVE-2026-89731
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  cxl/ras: Fix cxl_rch_get_aer_info() out-of-bounds AER register read

  cxl_rch_get_aer_info() copies the RCH Downstream Port AER capability from
  the RCRB MMIO block using…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  cxl/ras: Fix cxl_rch_get_aer_info() out-of-bounds AER register read

  cxl_rch_get_aer_info() copies the RCH Downstream Port AER capability from
  the RCRB MMIO block using…
severity: high
cvss: 7.1
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H'
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 6ac07883dbb5f60f7bc56a13b7a84a382aa9c1ab <
    7f5a2a330dde8e8aa2dd80e1f3e05b6ada049607
  - >-
    Linux >= 6ac07883dbb5f60f7bc56a13b7a84a382aa9c1ab <
    8bd3523df1319edc61cd391e695c84a4618516df
  - >-
    Linux >= 6ac07883dbb5f60f7bc56a13b7a84a382aa9c1ab <
    8e3d9dbb25d3ddbe72b4542ec4f7c4e622fe0ced
  - >-
    Linux >= 6ac07883dbb5f60f7bc56a13b7a84a382aa9c1ab <
    29458e62d0829cbc99435f3e44fd560f9bbf1da7
  - Linux 6.7
published: '2026-09-11'
updated: '2026-09-21'
sourceUpdated: '2026-09-21T14:17:26.173'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-89731'
references:
  - url: 'https://git.kernel.org/stable/c/29458e62d0829cbc99435f3e44fd560f9bbf1da7'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/7f5a2a330dde8e8aa2dd80e1f3e05b6ada049607'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8bd3523df1319edc61cd391e695c84a4618516df'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/8e3d9dbb25d3ddbe72b4542ec4f7c4e622fe0ced'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89731.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-89731'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2532462'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-89731'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-89731'
  - url: >-
      https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-89731.mbox
tags:
  - nvd
  - cve.org
  - csaf
  - vex
  - red-hat
epss: 0.00166
epssPercentile: 0.05136
ingestedAt: '2026-09-14T15:23:07.472Z'
cwe:
  - CWE-125
scores:
  nvd: 7.1
  vendor: 5.5
---

## Overview

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

cxl/ras: Fix cxl_rch_get_aer_info() out-of-bounds AER register read

cxl_rch_get_aer_info() copies the RCH Downstream Port AER capability from
the RCRB MMIO block using a readl() loop bounded by sizeof(struct
aer_capability_regs). This struct is a software layout and its embedded
struct pcie_tlp_log is larger than the on-wire AER capability. As a
result the loop reads past the mapped AER register block.

The over-read also populates the software-only tail fields including
header_log.header_len. An out-of-range header_len passed to
pcie_print_tlp_log() can then loop past the header log buffer and cause
a second out-of-bounds read.

The read was correct when introduced, but struct pcie_tlp_log has since
grown (Header Log and TLP Prefix Log sizes, header_len and flit fields),
so sizeof(struct aer_capability_regs) no longer matches the physical AER
capability.

Bound the read to the physical AER registers, header through the 16 byte
Header Log. Zero the destination first so the software-only fields are
deterministic.

## Remediation

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

## Vendor advisories

- **Red Hat VEX** · Moderate · updated 2026-09-21 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89731.json)
