CVE-2025-37856 btrfs: harden block_group::bg_list against list_del() races
A race condition in the Linux kernel's btrfs filesystem can cause a refcount underflow and kernel warning, potentially leading to denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2025-37856?
CVE-2025-37856 is a high-severity vulnerability in Linux kernel, published on 9 May 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
btrfs: harden block_group::bg_list against list_del() races
As far as I can tell, these calls of list_del_init() on bg_list cannot run concurrently with btrfs_mark_bg_unused() or btrfs_mark_bg_to_reclaim(), as they are in transaction error paths and situations where the block group is readonly.
However, if there is any chance at all of racing with mark_bg_unused(), or a different future user of bg_list, better to be safe than sorry.
Otherwise we risk the following interleaving (bg_list refcount in parens)
T1 (some random op) T2 (btrfs_mark_bg_unused) !list_empty(&bg->bg_list); (1) list_del_init(&bg->bg_list); (1) list_move_tail (1) btrfs_put_block_group (0) btrfs_delete_unused_bgs bg = list_first_entry list_del_init(&bg->bg_list); btrfs_put_block_group(bg); (-1)
Ultimately, this results in a broken ref count that hits zero one deref early and the real final deref underflows the refcount, resulting in a WARNING.
Which versions are affected by CVE-2025-37856?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2025-37856?
Apply the vendor's patch.
Is CVE-2025-37856 being exploited?
There is no known exploitation of CVE-2025-37856 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-62738, AZL-70141, BELL-CVE-2025-37856, DEBIAN-CVE-2025-37856, GHSA-ppp2-86mr-9vh3, ROOT-OS-DEBIAN-11-CVE-2025-37856 and 4 more.