Skip to content
Heist/ feed
Back to feed
UnratedFix available

btrfs: free pages on error in btrfs_uring_read_extent()

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: btrfs: free pages on error in btrfs_uring_read_extent() In this function the 'pages' object is never freed in the hopes that it is picked up by btrfs_uring_read_finished() whenever that executes in the future. But that's just the happy path. Along the way previous allocations might have gone wrong, or we might not get -EIOCBQUEUED from btrfs_encoded_read_regular_fill_pages(). In all these cases, we go to a cleanup section that frees all memory allocated by this function without assuming any deferred execution, and this also needs to happen for the 'pages' allocation.

Products
Kernel
Affected versions
Not specified
Fixed versions
6.18.17, 6.19.7
CVEs
CVE-2026-23423
Confirmed fixed CVEs
Not specified
Updated in this feed
5 Nov 2026, 02:00 UTC · Revision 1

Source evidence

btrfs: free pages on error in btrfs_uring_read_extent()

core-osv · Original source

Published 3 Apr 2026, 13:24 UTC

In the Linux kernel, the following vulnerability has been resolved: btrfs: free pages on error in btrfs_uring_read_extent() In this function the 'pages' object is never freed in the hopes that it is picked up by btrfs_uring_read_finished() whenever that executes in the future. But that's just the happy path. Along the way previous allocations might have gone wrong, or we might not get -EIOCBQUEUED from btrfs_encoded_read_regular_fill_pages(). In all these cases, we go to a cleanup section that frees all memory allocated by this function without assuming any deferred execution, and this also needs to happen for the 'pages' allocation.

osv:CVE-2026-23423

Kernel

Fixed versions: 6.18.17, 6.19.7

Complete source record
{
  "id": "8859511be241fef37a249465f28611a96da3fc1d07507ef0042a8c9a9d0eae3b",
  "url": "https://osv.dev/vulnerability/CVE-2026-23423",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "btrfs: free pages on error in btrfs_uring_read_extent()",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: btrfs: free pages on error in btrfs_uring_read_extent() In this function the 'pages' object is never freed in the hopes that it is picked up by btrfs_uring_read_finished() whenever that executes in the future. But that's just the happy path. Along the way previous allocations might have gone wrong, or we might not get -EIOCBQUEUED from btrfs_encoded_read_regular_fill_pages(). In all these cases, we go to a cleanup section that frees all memory allocated by this function without assuming any deferred execution, and this also needs to happen for the 'pages' allocation.",
    "evidence": "osv:CVE-2026-23423",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.18.17",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.19.7",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-23423",
      "aliases": [
        "CVE-2026-23423"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "34310c442e175f286b4c06ab5caa4e0b267ea31c"
                },
                {
                  "fixed": "d4f210de01eaccac61eee657f676045ef9771d07"
                },
                {
                  "fixed": "628895890b0c9ac9129129e89455da7db95ba343"
                },
                {
                  "fixed": "3f501412f2079ca14bf68a18d80a2b7a823f1f64"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23423.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.17"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "6.19.7"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23423.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:41.739919094Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/3f501412f2079ca14bf68a18d80a2b7a823f1f64",
        "https://git.kernel.org/stable/c/628895890b0c9ac9129129e89455da7db95ba343",
        "https://git.kernel.org/stable/c/d4f210de01eaccac61eee657f676045ef9771d07",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/23xxx/CVE-2026-23423.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-23423",
        "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/23xxx/CVE-2026-23423.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-23423",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 509283,
  "published_at": "2026-04-03T13:24:31.966+00:00"
}