Linux Kernel Btrfs Quota Feature Assertion Failure Vulnerability

Vulnerability

A vulnerability in the Linux kernel's Btrfs file system has been identified, related to the management of simple quotas. When quotas are enabled, an incompatibility bit should be set before the transaction is committed. However, the current implementation only sets the bit after the transaction, leading to a potential assertion failure. This issue can be reproduced by enabling quotas on a Btrfs file system, unmounting it, and then remounting without committing a new transaction, which causes the missing incompatibility bit to trigger an assertion error.

Impact

The vulnerability causes a kernel assertion failure, leading to a crash. This is due to the Btrfs file system's quota management not properly synchronizing flags, causing an inconsistency that the kernel's error handling cannot manage.

Reproduction

The vulnerability can be reproduced by creating a Btrfs file system on a block device, mounting it, enabling simple quotas, unmounting the file system, and then remounting it without committing a new transaction. This sequence exposes the missing incompatibility bit, causing the assertion failure.

Remediation

The vulnerability has been addressed in the Linux kernel by adjusting the order in which the quota flags are set, ensuring that both the status and incompatibility bits are properly synchronized within the same transaction.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
3.8
remediation
0.0
relevance
0.0
threat
4.8
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.