Skip to content
Heist/ feed
Back to feed
HighFix available

ntfs: avoid heap allocation for free-cluster readahead state

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: ntfs: avoid heap allocation for free-cluster readahead state get_nr_free_clusters() allocates a temporary file_ra_state before it publishes the precomputed free cluster count, sets NVolFreeClusterKnown(), and wakes vol->free_waitq. If that allocation fails, the worker returns without setting the flag or waking waiters, so callers waiting for the free count can block indefinitely. The readahead state is only used synchronously while scanning the bitmap. Keep it on the stack and pass it by address to the readahead helper. This eliminates the early allocation failure path instead of adding a special case that publishes a conservative count and wakes the waitqueue. Zero-initialize the on-stack state because file_ra_state_init() only sets ra_pages and prev_pos. Apply the same treatment to __get_nr_free_mft_records(), which scans the MFT bitmap with the same short-lived readahead state.

Products
Kernel
Affected versions
Not specified
Fixed versions
7.1.5
CVEs
CVE-2026-72202
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 02:46 UTC · Revision 1

Source evidence

ntfs: avoid heap allocation for free-cluster readahead state

core-osv · Original source

Published 15 Aug 2026, 05:53 UTC

In the Linux kernel, the following vulnerability has been resolved: ntfs: avoid heap allocation for free-cluster readahead state get_nr_free_clusters() allocates a temporary file_ra_state before it publishes the precomputed free cluster count, sets NVolFreeClusterKnown(), and wakes vol->free_waitq. If that allocation fails, the worker returns without setting the flag or waking waiters, so callers waiting for the free count can block indefinitely. The readahead state is only used synchronously while scanning the bitmap. Keep it on the stack and pass it by address to the readahead helper. This eliminates the early allocation failure path instead of adding a special case that publishes a conservative count and wakes the waitqueue. Zero-initialize the on-stack state because file_ra_state_init() only sets ra_pages and prev_pos. Apply the same treatment to __get_nr_free_mft_records(), which scans the MFT bitmap with the same short-lived readahead state.

osv:CVE-2026-72202

Kernel

Fixed versions: 7.1.5

Complete source record
{
  "id": "3dc9793f087487f800585188b8b455774731aad02b775493ad9734bf6b5da1d4",
  "url": "https://osv.dev/vulnerability/CVE-2026-72202",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "ntfs: avoid heap allocation for free-cluster readahead state",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: ntfs: avoid heap allocation for free-cluster readahead state get_nr_free_clusters() allocates a temporary file_ra_state before it publishes the precomputed free cluster count, sets NVolFreeClusterKnown(), and wakes vol->free_waitq. If that allocation fails, the worker returns without setting the flag or waking waiters, so callers waiting for the free count can block indefinitely. The readahead state is only used synchronously while scanning the bitmap. Keep it on the stack and pass it by address to the readahead helper. This eliminates the early allocation failure path instead of adding a special case that publishes a conservative count and wakes the waitqueue. Zero-initialize the on-stack state because file_ra_state_init() only sets ra_pages and prev_pos. Apply the same treatment to __get_nr_free_mft_records(), which scans the MFT bitmap with the same short-lived readahead state.",
    "evidence": "osv:CVE-2026-72202",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "7.1.5",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-72202",
      "aliases": [
        "CVE-2026-72202"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6251f0b0de7d645e3591931ca4c11d8322c1866f"
                },
                {
                  "fixed": "40ee64e633e5e413f2255bb48c063977d8c86f34"
                },
                {
                  "fixed": "c05132077df57a384919f61d7f8a8e76d748a6d4"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72202.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "7.1.0"
                },
                {
                  "fixed": "7.1.5"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72202.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:46.226629881Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/40ee64e633e5e413f2255bb48c063977d8c86f34",
        "https://git.kernel.org/stable/c/c05132077df57a384919f61d7f8a8e76d748a6d4",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72202.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-72202",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72202.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-72202",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 514402,
  "published_at": "2026-08-15T05:53:59.587+00:00"
}