GHSA-G6G3-325W-FC52
Vulnerability from github – Published: 2026-08-15 06:32 – Updated: 2026-08-15 06:32In 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.
{
"affected": [],
"aliases": [
"CVE-2026-74372"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-08-15T06:22:38Z",
"severity": null
},
"details": "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": "GHSA-g6g3-325w-fc52",
"modified": "2026-08-15T06:32:31Z",
"published": "2026-08-15T06:32:31Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74372"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/5ac9e793ba2583d72740d929e7858a6c82e22ed5"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/731485617bf862f1289c3f40ed1f800d0475826f"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/909d9dc3b5730c8ed7b764c68bc788342df2a07b"
}
],
"schema_version": "1.4.0",
"severity": []
}
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.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.