Skip to content
Heist/ feed
Back to feed
UnratedFix available

pnfs/blocklayout: Fix device leaks on parse failure

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: pnfs/blocklayout: Fix device leaks on parse failure bl_parse_concat() and bl_parse_stripe() allocate a child device array and then parse each child in turn. If parsing a child fails, the failed child is not counted in nr_children and the parent may be left with a children array that bl_free_device() will not release when nr_children is zero. Release the failed child and the already parsed children before returning the error. Also make bl_free_device() release the child array whenever the children pointer is set, so that partially initialised concat or stripe devices are cleaned up correctly. bl_parse_scsi() can also fail after assigning d->bdev_file and dropping the file reference. Clear the pointer after fput() so that an outer cleanup path does not put it again.

Products
Kernel
Affected versions
Not specified
Fixed versions
6.1.191, 6.12.110, 6.18.52, 6.6.160, 7.2.6
CVEs
CVE-2026-90150
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 16:19 UTC · Revision 1

Source evidence

pnfs/blocklayout: Fix device leaks on parse failure

core-osv · Original source

Published 17 Sept 2026, 16:06 UTC

In the Linux kernel, the following vulnerability has been resolved: pnfs/blocklayout: Fix device leaks on parse failure bl_parse_concat() and bl_parse_stripe() allocate a child device array and then parse each child in turn. If parsing a child fails, the failed child is not counted in nr_children and the parent may be left with a children array that bl_free_device() will not release when nr_children is zero. Release the failed child and the already parsed children before returning the error. Also make bl_free_device() release the child array whenever the children pointer is set, so that partially initialised concat or stripe devices are cleaned up correctly. bl_parse_scsi() can also fail after assigning d->bdev_file and dropping the file reference. Clear the pointer after fput() so that an outer cleanup path does not put it again.

osv:CVE-2026-90150

Kernel

Fixed versions: 6.1.191, 6.6.160, 6.12.110, 6.18.52, 7.2.6

Complete source record
{
  "id": "eeff2b469c0ac3422e548bc9fa1130c4310cd3af1521df83154165601b9266df",
  "url": "https://osv.dev/vulnerability/CVE-2026-90150",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "pnfs/blocklayout: Fix device leaks on parse failure",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: pnfs/blocklayout: Fix device leaks on parse failure bl_parse_concat() and bl_parse_stripe() allocate a child device array and then parse each child in turn. If parsing a child fails, the failed child is not counted in nr_children and the parent may be left with a children array that bl_free_device() will not release when nr_children is zero. Release the failed child and the already parsed children before returning the error. Also make bl_free_device() release the child array whenever the children pointer is set, so that partially initialised concat or stripe devices are cleaned up correctly. bl_parse_scsi() can also fail after assigning d->bdev_file and dropping the file reference. Clear the pointer after fput() so that an outer cleanup path does not put it again.",
    "evidence": "osv:CVE-2026-90150",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.1.191",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.160",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.110",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.52",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.2.6",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-90150",
      "aliases": [
        "CVE-2026-90150"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5c83746a0cf2831d4b59f5cf99ef5fbf138564e4"
                },
                {
                  "fixed": "710ae187a5d490a894054d17645cf5c83d37dfbf"
                },
                {
                  "fixed": "51d162dfb618f6cf3aa5e331c0305e27771ad884"
                },
                {
                  "fixed": "8a2494964edac2a13e82441c2bf887548dc3be0b"
                },
                {
                  "fixed": "1e1c36b206c659cf94c6755a1d821ed1babd32bc"
                },
                {
                  "fixed": "23e4162405c456ce12c772d5882d306135e828ae"
                },
                {
                  "fixed": "c056f817e4200fb18079d5052c273a22f191ff0a"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90150.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "3.18.0"
                },
                {
                  "fixed": "6.1.191"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.160"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.110"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.52"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.2.6"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90150.json"
          }
        }
      ],
      "modified": "2026-11-01T02:30:17.599549106Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/1e1c36b206c659cf94c6755a1d821ed1babd32bc",
        "https://git.kernel.org/stable/c/23e4162405c456ce12c772d5882d306135e828ae",
        "https://git.kernel.org/stable/c/51d162dfb618f6cf3aa5e331c0305e27771ad884",
        "https://git.kernel.org/stable/c/710ae187a5d490a894054d17645cf5c83d37dfbf",
        "https://git.kernel.org/stable/c/8a2494964edac2a13e82441c2bf887548dc3be0b",
        "https://git.kernel.org/stable/c/c056f817e4200fb18079d5052c273a22f191ff0a",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90150.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-90150",
        "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/90xxx/CVE-2026-90150.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-90150",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 497249,
  "published_at": "2026-09-17T16:06:44.32+00:00"
}