Skip to content
Heist/ feed
UnratedFix available

NFS: Charge unstable writes by request size, not folio size

Type: advisorySource: OSV1 source record

In the Linux kernel, the following vulnerability has been resolved: NFS: Charge unstable writes by request size, not folio size nfs_folio_mark_unstable() and nfs_folio_clear_commit() charge and uncharge NR_WRITEBACK/WB_WRITEBACK by folio_nr_pages(folio) once per *request* added to or removed from a commit list. This is correct only when a folio has a single associated request. When pg_test splits a folio into N sub-folio requests (e.g. pNFS flexfiles striping with a stripe unit smaller than the folio size, or plain wsize-limited splitting), each of the N requests independently charges the whole folio's page count, inflating the accounting by a factor of N per folio. With large folios and small stripe units this reaches multiple orders of magnitude: a 2 MiB folio split into 512 4 KiB requests can charge up to 512x its real size, pushing global dirty+writeback accounting past the system's dirty threshold and forcing every buffered writer on the host into the hard-throttle path, including unrelated in-kernel NFS server threads sharing the box. Charge each request only for the pages it actually covers.

Announced Source revision 1
Original source ↗

CVE-2026-72132

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:CVE-2026-72132

Kernel

Source reference: /affected/1/package/name

Affected versions
Not stated in this record
Fixed versions
6.6.148

Source reference: /affected/1/ranges

6.12.97

Source reference: /affected/1/ranges

6.18.40

Source reference: /affected/1/ranges

7.1.5

Source reference: /affected/1/ranges

Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "ranges": [
      {
        "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
        "type": "GIT",
        "events": [
          {
            "introduced": "0c493b5cf16e28d761b6e77c7c32aa0e7af70813"
          },
          {
            "fixed": "a442c258320b689f13d2205eaeeddf8b0e630288"
          },
          {
            "fixed": "1f646e23372f3444dc5f0bcb5404a49d26756add"
          },
          {
            "fixed": "0ffc032294a29601b1019dba91aa1a930d90df17"
          },
          {
            "fixed": "a192b6c149c6ea10cc88869accb78165eb454456"
          },
          {
            "fixed": "27934d02cbeb8a957dd11c985a579e58d30c5270"
          }
        ]
      }
    ],
    "database_specific": {
      "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72132.json"
    }
  },
  {
    "ranges": [
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "6.3.0"
          },
          {
            "fixed": "6.6.148"
          }
        ]
      },
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "6.7.0"
          },
          {
            "fixed": "6.12.97"
          }
        ]
      },
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "6.13.0"
          },
          {
            "fixed": "6.18.40"
          }
        ]
      },
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "6.19.0"
          },
          {
            "fixed": "7.1.5"
          }
        ]
      }
    ],
    "package": {
      "name": "Kernel",
      "ecosystem": "Linux"
    },
    "database_specific": {
      "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72132.json"
    }
  }
]
Related CVEs
CVE-2026-72132

Source reference: /id

Publisher severity

No explicit severity was provided.

Event
#50672 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement