CVE-2024-41078

btrfs: qgroup: fix quota root leak after quota disable failure

published July 29, 2024

CVSS
—
EPSS
0%
Percentile
12.2
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

btrfs: qgroup: fix quota root leak after quota disable failure

If during the quota disable we fail when cleaning the quota tree or when

deleting the root from the root tree, we jump to the 'out' label without

ever dropping the reference on the quota root, resulting in a leak of the

root since fs_info->quota_root is no longer pointing to the root (we have

set it to NULL just before those steps).

Fix this by always doing a btrfs_put_root() call under the 'out' label.

This is a problem that exists since qgroups were first added in 2012 by

commit bed92eae26cc ("Btrfs: qgroup implementation and prototypes"), but

back then we missed a kfree on the quota root and free_extent_buffer()

calls on its root and commit root nodes, since back then roots were not

yet reference counted.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00223 · 12.2th percentile
Published
2024-07-29T15:04Z
EPSS history
Timeline
  • 29 JUL 15:04Z
    btrfs: qgroup: fix quota root leak after quota disable failure
    cvelistv5