GHSA-W48H-WV4W-HRQ6
Vulnerability from github – Published: 2026-08-15 06:32 – Updated: 2026-08-15 06:32In the Linux kernel, the following vulnerability has been resolved:
btrfs: zoned: fix deadlock waiting for ticket during data relocation
When performing data relocation on a zoned filesystem, BTRFS can deadlock in handle_reserve_tickets(). The relocation process is waiting on a space reservation ticket that can never be fulfilled, because the relocation itself is the operation responsible for freeing up that space.
Fix this by introducing a new flush state, BTRFS_RESERVE_FLUSH_ZONED_RELOCATION, specifically for data chunk allocation during zoned relocation. Like BTRFS_RESERVE_FLUSH_FREE_SPACE_INODE, this state uses priority_reclaim_data_space() instead of the normal flushing path, which avoids re-entering the relocation code and breaking the deadlock cycle.
In btrfs_alloc_data_chunk_ondemand(), select this new flush state when the inode belongs to a data relocation root on a zoned filesystem.
{
"affected": [],
"aliases": [
"CVE-2026-74319"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-08-15T06:22:32Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\nbtrfs: zoned: fix deadlock waiting for ticket during data relocation\n\nWhen performing data relocation on a zoned filesystem, BTRFS can deadlock\nin handle_reserve_tickets(). The relocation process is waiting on a space\nreservation ticket that can never be fulfilled, because the relocation\nitself is the operation responsible for freeing up that space.\n\nFix this by introducing a new flush state,\nBTRFS_RESERVE_FLUSH_ZONED_RELOCATION, specifically for data chunk\nallocation during zoned relocation. Like\nBTRFS_RESERVE_FLUSH_FREE_SPACE_INODE, this state uses\npriority_reclaim_data_space() instead of the normal flushing path, which\navoids re-entering the relocation code and breaking the deadlock cycle.\n\nIn btrfs_alloc_data_chunk_ondemand(), select this new flush state when the\ninode belongs to a data relocation root on a zoned filesystem.",
"id": "GHSA-w48h-wv4w-hrq6",
"modified": "2026-08-15T06:32:29Z",
"published": "2026-08-15T06:32:29Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74319"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/814c3b4ea357297c507158bceb07bcdc5fbe9808"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/f84dbbaa988e1344634a20ddf6c7d51a99f12477"
}
],
"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.