CVE-2022-49912: btrfs: fix ulist leaks in error paths of qgroup self tests
In the Linux kernel, the following vulnerability has been resolved:
btrfs: fix ulist leaks in error paths of qgroup self tests
In the test_no_shared_qgroup() and test_multiple_refs() qgroup self tests,
if we fail to add the tree ref, remove the extent item or remove the
extent ref, we are returning from the test function without freeing the
"old_roots" ulist that was allocated by the previous calls to
btrfs_find_all_roots(). Fix that by calling ulist_free() before returning.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel Btrfs memory leak fix in quota group self-test error paths. The supplied sources do not show active exploitation, CVSS scoring, or a user-facing attack path. Business urgency is mainly routine kernel hygiene unless your fleet depends on affected Linux kernels and Btrfs quota testing paths.
Executive priority
Handle through standard kernel patch management. Escalate only if affected Btrfs-heavy systems are business critical or vendor guidance later reports broader impact or exploitation.
Technical view
Btrfs qgroup self tests test_no_shared_qgroup() and test_multiple_refs() could return after certain failures without freeing the old_roots ulist allocated by btrfs_find_all_roots(). Stable kernel commits add ulist_free() on those error paths. The source identifies affected Linux versions but gives no CWE, CVSS, or exploit primitive.
Likely exposure
Exposure appears limited to Linux systems running affected kernel versions with the relevant Btrfs quota group self-test code. The source does not establish impact on normal Btrfs filesystem operation, remote access, privilege escalation, or data compromise.
Exploitation context
The bundle marks KEV as false and provides no cited evidence of active exploitation, public weaponization, or exploit availability. Based only on supplied sources, this should not be treated as exploited in the wild.
Researcher notes
The record is sparse: no CVSS, CWE, exploit status, or detailed impact analysis is supplied. The described bug is a resource leak in Btrfs qgroup self-test error handling, fixed by freeing old_roots before returns.
Mitigation direction
Check your Linux distribution kernel advisory for CVE-2022-49912 backport status.
Upgrade to a kernel build containing the referenced stable Btrfs fix.
Prioritize hosts using Btrfs or kernel self-test workflows first.
Track vendor guidance because the bundle names no standalone workaround.
Validation and detection
Inventory Linux kernel versions across servers, images, and appliances.
Identify systems using Btrfs or running Btrfs qgroup self tests.
Compare installed kernels against vendor advisories and stable commit backports.
Confirm patched kernels include the ulist_free() error-path fix.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-49912 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
9Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
May 1, 2025, 14:10 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.