---
id: CVE-2026-89593
title: 'hugetlb: only adjust reservation during unmapping if mapcount is 0'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  hugetlb: only adjust reservation during unmapping if mapcount is 0

  Since df7a6d1f6405, __unmap_hugepage_range can adjust reservations.  In
  the case of folio mapped in …
severity: high
cvss: 7.1
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 <
    b0b1b9ca80b795ed2223e76dd787db7067121fb9
  - >-
    Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 <
    a3c65af20cceb7f997847727636b4017326f845d
  - >-
    Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 <
    0f001491e5a2ec69aa9d5dd6b799e5742245f9ea
  - >-
    Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 <
    5120b1e048d48596ffaec1a8412012a91adba73b
  - Linux 6.9
published: '2026-09-11'
updated: '2026-09-14'
sourceUpdated: '2026-09-14T12:01:16.035Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-89593'
references:
  - url: 'https://git.kernel.org/stable/c/b0b1b9ca80b795ed2223e76dd787db7067121fb9'
  - url: 'https://git.kernel.org/stable/c/a3c65af20cceb7f997847727636b4017326f845d'
  - url: 'https://git.kernel.org/stable/c/0f001491e5a2ec69aa9d5dd6b799e5742245f9ea'
  - url: 'https://git.kernel.org/stable/c/5120b1e048d48596ffaec1a8412012a91adba73b'
tags:
  - cve.org
epss: 0.00125
epssPercentile: 0.0256
ingestedAt: '2026-09-14T15:23:07.451Z'
---

## Overview

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

hugetlb: only adjust reservation during unmapping if mapcount is 0

Since df7a6d1f6405, __unmap_hugepage_range can adjust reservations.  In
the case of folio mapped in both a parent and a child, if the parent
unmaps the range first, the reservation adjustment will result in an
underflow of the reserved count.  Once the child unmaps the range, the
count is restored.  Change __unmap_hugepage_range() to check the mapcount
before adjusting the reservation.

## Affected

- `Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 < b0b1b9ca80b795ed2223e76dd787db7067121fb9`
- `Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 < a3c65af20cceb7f997847727636b4017326f845d`
- `Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 < 0f001491e5a2ec69aa9d5dd6b799e5742245f9ea`
- `Linux >= df7a6d1f64056aec572162c5d35ed9ff86ece6f3 < 5120b1e048d48596ffaec1a8412012a91adba73b`
- `Linux 6.9`

## Remediation

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