CVE-2022-50379

btrfs: fix race between quota enable and quota rescan ioctl

MEDIUM
4.7
CVSS Score
Published: September 18, 2025 at 01:33 PM UTC
Updated: June 17, 2026 at 05:23 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM4.7
Exploit prediction
EPSS 0.1%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix race between quota enable and quota rescan ioctl When enabling quotas, at btrfs_quota_enable(), after committing the transaction, we change fs_info->quota_root to point to the quota root we created and set BTRFS_FS_QUOTA_ENABLED at fs_info->flags. Then we try to start the qgroup rescan worker, first by initializing it with a call to qgroup_rescan_init() - however if that fails we end up freeing the quota root but we leave fs_info->quota_root still pointing to it, this can later result in a use-after-free somewhere else. We have previously set the flags BTRFS_FS_QUOTA_ENABLED and BTRFS_QGROUP_STATUS_FLAG_ON, so we can only fail with -EINPROGRESS at btrfs_quota_enable(), which is possible if someone already called the quota rescan ioctl, and therefore started the rescan worker. So fix this by ignoring an -EINPROGRESS and asserting we can't get any other error.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 4.19.2624.17 ≤ v < 4.19.2624.17 ≤ v < 5.10.1504.17 ≤ v < 5.15.754.17 ≤ v < 5.19.174.17 ≤ v < 5.4.2204.17 ≤ v < 6.0.34.17 ≤ v < 6.14.20 ≤ v < 5.4.2205.11 ≤ v < 5.15.755.16 ≤ v < 5.19.175.5 ≤ v < 5.10.1506.0 ≤ v < 6.0.34.175d23515be66904fa3b1b5d6bd72d2199cd2447ab
Vendor states this is fixed in 0efd9dfc00d677a1d0929319a6103cb2dfc41c22 (fixed)
Vendor states this is fixed in 26b7c0ac49a3eea15559c9d84863736a6d1164b4 (fixed)
Vendor states this is fixed in 331cd9461412e103d07595a10289de90004ac890 (fixed)
Vendor states this is fixed in 47b5ffe86332af95f0f52be0a63d4da7c2b37b55 (fixed)
Vendor states this is fixed in 4b996a3014ef014af8f97b60c35f5289210a4720 (fixed)
Vendor states this is fixed in 6c22f86dd221eba0c7af645b1af73dcbc04ee27b (fixed)
Vendor states this is fixed in c97f6d528c3f1c83a6b792a8a7928c236c80b8fe (fixed)
Vendor states this is fixed in 4.17 (unaffected)
Vendor states this is fixed in 4.19.262 (unaffected)
Vendor states this is fixed in 5.10.150 (unaffected)
Vendor states this is fixed in 5.15.75 (unaffected)
Vendor states this is fixed in 5.19.17 (unaffected)
Vendor states this is fixed in 5.4.220 (unaffected)
Vendor states this is fixed in 6.0.3 (unaffected)
Vendor states this is fixed in 6.1 (unaffected)

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

4.7MEDIUMCISA-ADP
Attack Vector
LOCAL
Complexity
HIGH
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-362

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card