CVE-2026-74372 (GCVE-0-2026-74372)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:58 – Updated: 2026-08-17 05:18
VLAI
Title
raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path
Summary
In the Linux kernel, the following vulnerability has been resolved: raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path In raid1_write_request(), each per-mirror loop iteration begins by incrementing rdev->nr_pending. If a REQ_ATOMIC write encounters a badblock within the requested range, the code jumps to err_handle without dropping the reference taken for the current mirror. err_handle's cleanup loop will only decrements for k < i and r1_bio->bios[k] is non-NULL. The current slot is therefore skipped, leaving its nr_pending reference leaked permanently. The reference prevents the rdev from ever being removed, since raid1_remove_conf() refuses to remove an rdev with nr_pending > 0. Fix this by calling rdev_dec_pending() before jumping to err_handle.
Severity
No CVSS data available.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca , < 5ac9e793ba2583d72740d929e7858a6c82e22ed5 (git)
Affected: f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca , < 731485617bf862f1289c3f40ed1f800d0475826f (git)
Affected: f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca , < 909d9dc3b5730c8ed7b764c68bc788342df2a07b (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.13
Unaffected: 0 , < 6.13 (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/raid1.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "5ac9e793ba2583d72740d929e7858a6c82e22ed5",
              "status": "affected",
              "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
              "versionType": "git"
            },
            {
              "lessThan": "731485617bf862f1289c3f40ed1f800d0475826f",
              "status": "affected",
              "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
              "versionType": "git"
            },
            {
              "lessThan": "909d9dc3b5730c8ed7b764c68bc788342df2a07b",
              "status": "affected",
              "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/md/raid1.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.13"
            },
            {
              "lessThan": "6.13",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.13",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nraid1: fix nr_pending leak in REQ_ATOMIC bad-block error path\n\nIn raid1_write_request(), each per-mirror loop iteration begins by\nincrementing rdev-\u003enr_pending. If a REQ_ATOMIC write encounters a\nbadblock within the requested range, the code jumps to err_handle\nwithout dropping the reference taken for the current mirror.\n\nerr_handle\u0027s cleanup loop will only decrements for k \u003c i and\nr1_bio-\u003ebios[k] is non-NULL. The current slot is therefore skipped,\nleaving its nr_pending reference leaked permanently. The reference\nprevents the rdev from ever being removed, since raid1_remove_conf()\nrefuses to remove an rdev with nr_pending \u003e 0.\n\nFix this by calling rdev_dec_pending() before jumping to err_handle."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:18:07.752Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/5ac9e793ba2583d72740d929e7858a6c82e22ed5"
        },
        {
          "url": "https://git.kernel.org/stable/c/731485617bf862f1289c3f40ed1f800d0475826f"
        },
        {
          "url": "https://git.kernel.org/stable/c/909d9dc3b5730c8ed7b764c68bc788342df2a07b"
        }
      ],
      "title": "raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-74372",
    "datePublished": "2026-08-15T05:58:52.306Z",
    "dateReserved": "2026-08-15T05:44:03.889Z",
    "dateUpdated": "2026-08-17T05:18:07.752Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-74372",
      "date": "2026-09-21",
      "epss": "0.00166",
      "percentile": "0.06272"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/md/raid1.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "5ac9e793ba2583d72740d929e7858a6c82e22ed5",
                    "status": "affected",
                    "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "731485617bf862f1289c3f40ed1f800d0475826f",
                    "status": "affected",
                    "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "909d9dc3b5730c8ed7b764c68bc788342df2a07b",
                    "status": "affected",
                    "version": "f2a38abf5f1c5aeb3be8e9f4d3d815c867fff7ca",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/md/raid1.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.13"
                  },
                  {
                    "lessThan": "6.13",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.40",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.1.*",
                    "status": "unaffected",
                    "version": "7.1.5",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.2",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nraid1: fix nr_pending leak in REQ_ATOMIC bad-block error path\n\nIn raid1_write_request(), each per-mirror loop iteration begins by\nincrementing rdev-\u003enr_pending. If a REQ_ATOMIC write encounters a\nbadblock within the requested range, the code jumps to err_handle\nwithout dropping the reference taken for the current mirror.\n\nerr_handle\u0027s cleanup loop will only decrements for k \u003c i and\nr1_bio-\u003ebios[k] is non-NULL. The current slot is therefore skipped,\nleaving its nr_pending reference leaked permanently. The reference\nprevents the rdev from ever being removed, since raid1_remove_conf()\nrefuses to remove an rdev with nr_pending \u003e 0.\n\nFix this by calling rdev_dec_pending() before jumping to err_handle."
          }
        ],
        "id": "CVE-2026-74372",
        "lastModified": "2026-08-17T06:19:32.023",
        "metrics": {},
        "published": "2026-08-15T06:22:38.967",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5ac9e793ba2583d72740d929e7858a6c82e22ed5"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/731485617bf862f1289c3f40ed1f800d0475826f"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/909d9dc3b5730c8ed7b764c68bc788342df2a07b"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-19T10:01:38+00:00",
      "cve": "CVE-2026-74372",
      "id": "CVE-2026-74372",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_affected": "198",
      "product_status:known_not_affected": "76",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: raid1: fix nr_pending leak in REQ_ATOMIC bad-block error path",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-74372.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-15T01:22:11Z",
      "cve": "CVE-2026-74372",
      "id": "CVE-2026-74372",
      "initial_release_date": "2026-08-27T16:51:37Z",
      "product_status:known_affected": "29",
      "product_status:known_not_affected": "333",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-74372",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-74372.json",
      "version": "5"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…