CVE-2025-39759: btrfs: qgroup: fix race between quota disable and quota rescan ioctl
Vulnerability summary
CVE-2025-39759 is a high (CVSS 7.0) vulnerability in debian debian_linux. EPSS estimates a 0.12% chance of exploitation in the next 30 days, higher than 1.7% of scored vulnerabilities.
Not severe (CVSS 7, local access); no exploitation reported by the 5 checked sources
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 34 · Related 31Timeline
- 11-09-2025PublishedVulnerability first disclosed.
- 12-05-2026Last modifiedVulnerability information updated.
Description
In the Linux kernel, the following vulnerability has been resolved: btrfs: qgroup: fix race between quota disable and quota rescan ioctl There's a race between a task disabling quotas and another running the rescan ioctl that can result in a use-after-free of qgroup records from the fs_info->qgroup_tree rbtree. This happens as follows: 1) Task A enters btrfs_ioctl_quota_rescan() -> btrfs_qgroup_rescan(); 2) Task B enters btrfs_quota_disable() and calls btrfs_qgroup_wait_for_completion(), which does nothing because at that point fs_info->qgroup_rescan_running is false (it wasn't set yet by task A); 3) Task B calls btrfs_free_qgroup_config() which starts freeing qgroups from fs_info->qgroup_tree without taking the lock fs_info->qgroup_lock; 4) Task A enters qgroup_rescan_zero_tracking() which starts iterating the fs_info->qgroup_tree tree while holding fs_info->qgroup_lock, but task B is freeing qgroup records from that tree without holding the lock, resulting in a use-after-free. Fix this by taking fs_info->qgroup_lock at btrfs_free_qgroup_config(). Also at btrfs_qgroup_rescan() don't start the rescan worker if quotas were already disabled.
CVSS metrics
3 scores · 3 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated7.0HighCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
- OSV · DebianEcosystem advisory · calculated7.0HighCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS trend
Probability
0.12%
Chance of exploitation in the next 30 days
Percentile
2%
Versus all other CVEs
30-day change
No change 0.00 pp
From 0.12% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Known conditions: local access, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.
Ubuntu149 products
- linuxAll versions (No fix recorded) | < 6.8.0-100.100
- linux-allwinner-5.19All versions (No fix recorded)
- linux-awsAll versions (No fix recorded) | < 6.8.0-1046.49
- linux-aws-5.0All versions (No fix recorded)
- linux-aws-5.11All versions (No fix recorded)
Debian2 products
- linux< 6.1.153-1 | < 6.12.48-1 | < 6.16.3-1
- debian_linuxEOL11.0
Linux2 products
- linux≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < 7cda0fdde5d9890976861421d207870500f9aace | ≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < b172535ccba12f0cf7d23b3b840989de47fc104d | ≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < dd0b28d877b293b1d7f8727a7de08ae36b6b9ef0 | ≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < c38028ce0d0045ca600b6a8345a0ff92bfb47b66 | ≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < 2fd0f5ceb997f90f4332ccbab6c7e907e6b2d0eb | ≥ e685da14af6b31e4b336a110cb1bae1afc268be8, < e1249667750399a48cafcf5945761d39fa584edf | 3.12
- linux_kernel≥ 3.12, < 6.1.149 | ≥ 6.2, < 6.6.103 | ≥ 6.7, < 6.12.44 | ≥ 6.13, < 6.15.11 | ≥ 6.16, < 6.16.2
3 vendors · 153 products