boxscore/security
CVE · referencelatest edition

Reference page — cumulative record through Wednesday, August 19, 2026 UTC. Reference pages update as the archive grows; only dated daily editions are immutable pages of record.

CVE-2025-39790HIGH
Linux Linux — bus: mhi: host: Detect events pointing to unexpected TREs
  AV  AC  PR  UI  S  C  I  A   CVSS    EPSS   %ile   KEV
   L   L   L   N  U  H  H  H    7.8   .0016    5.3     —
AFFECTED
  Product  Versions                                    Fixed
  Linux    1d3173a3bae7039b765a0956e3e4bf846dbaacb8 –  —
  Linux    5.7 –                                       5.15.190
TIMELINE
  Apr 16  Reserved by Linux
  Sep 11  Published (CNA: Linux)
  Jul 30  RESCORED — CVE-2025-39790 (Linux). CVSS 8.4 → 7.8 (NVD).
CWE-415 · CNA: Linux · CVSS v3.1 · 8 references · NVD status: Modified

Description

In the Linux kernel, the following vulnerability has been resolved: bus: mhi: host: Detect events pointing to unexpected TREs When a remote device sends a completion event to the host, it contains a pointer to the consumed TRE. The host uses this pointer to process all of the TREs between it and the host's local copy of the ring's read pointer. This works when processing completion for chained transactions, but can lead to nasty results if the device sends an event for a single-element transaction with a read pointer that is multiple elements ahead of the host's read pointer. For instance, if the host accesses an event ring while the device is updating it, the pointer inside of the event might still point to an old TRE. If the host uses the channel's xfer_cb() to directly free the buffer pointed to by the TRE, the buffer will be double-freed. This behavior was observed on an ep that used upstream EP stack without 'commit 6f18d174b73d ("bus: mhi: ep: Update read pointer only after buffer is written")'. Where the device updated the events ring pointer before updating the event contents, so it left a window where the host was able to access the stale data the event pointed to, before the device had the chance to update them. The usual pattern was that the host received an event pointing to a TRE that is not immediately after the last processed one, so it got treated as if it was a chained transaction, processing all of the TREs in between the two read pointers. This commit aims to harden the host by ensuring transactions where the event points to a TRE that isn't local_rp + 1 are chained. [mani: added stable tag and reworded commit message]

Lifecycle

Complete event history — 3 events, chronological
DateEventDetail
April 16, 2025ReservedReserved by Linux
September 11, 2025PublishedPublished (CNA: Linux)
July 30, 2026RESCOREDRESCORED — CVE-2025-39790 (Linux). CVSS 8.4 → 7.8 (NVD).

Affected

Affected products and packages — 2 rows
VendorProduct / PackageEcosystemVersion introducedFixed
LinuxLinux1d3173a3bae7039b765a0956e3e4bf846dbaacb8
LinuxLinux5.75.15.190

Weaknesses

CWE-415

References (8)

Related

Authoritative record: CVE-2025-39790 at cve.org

Vendors: linux

Weaknesses: CWE-415

About this page

This is a reference page, not a dated page of record. It assembles the complete lifecycle of CVE-2025-39790 from the CVE Program record, NVD enrichment, the CISA KEV catalog, EPSS, and OSV advisories. The box score's numbers (CVSS, EPSS, KEV status) are current as of Wednesday, August 19, 2026 UTC and are re-derived as the archive grows; only dated daily editions are immutable pages of record. The authoritative source for this identifier is cve.org.