7.8
/ 10
HIGH
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
btrfs: fix double free in create_space_info() error path
When kobject_init_and_add() fails, the call chain is:
create_space_info()
-> btrfs_sysfs_add_space_info_type()
-> kobject_init_and_add()
-> failure
-> kobject_put(&space_info->kobj)
-> space_info_release()
-> kfree(space_info)
Then control returns to create_space_info():
btrfs_sysfs_add_space_info_type() returns error
-> goto out_free
-> kfree(space_info)
This causes a double free.
Keep the direct kfree(space_info) for the earlier failure path, but
after btrfs_sysfs_add_space_info_type() has called kobject_put(), let
the kobject release callback handle the cleanup.
btrfs: fix double free in create_space_info() error path
When kobject_init_and_add() fails, the call chain is:
create_space_info()
-> btrfs_sysfs_add_space_info_type()
-> kobject_init_and_add()
-> failure
-> kobject_put(&space_info->kobj)
-> space_info_release()
-> kfree(space_info)
Then control returns to create_space_info():
btrfs_sysfs_add_space_info_type() returns error
-> goto out_free
-> kfree(space_info)
This causes a double free.
Keep the direct kfree(space_info) for the earlier failure path, but
after btrfs_sysfs_add_space_info_type() has called kobject_put(), let
the kobject release callback handle the cleanup.
Basic Information
ID
CVE-2026-46129
Source
Linux
Published
May 28, 2026 at 09:35
Modified
May 30, 2026 at 10:48
Affected Product
Vendor
Linux
Product
Linux
Version
58208907c4044a764dbd8896026283905da6d9be
Affected Versions
Linux Linux 58208907c4044a764dbd8896026283905da6d9be
Linux Linux bb4fa4c0b54aae25e55faeda7f78d0c11b8cd618
Linux Linux 6cb008f1bb23e023dfe615cca5df14570dfc8da5
Linux Linux a11224a016d6d1d46a4d9b6573244448a80d4d7f
Linux Linux a11224a016d6d1d46a4d9b6573244448a80d4d7f
Linux Linux 20e8f2de3688082eeafeb93c8900485b7542457e
Linux Linux 6.6.122
Linux Linux 6.12.67
Linux Linux 6.18.7
Linux Linux 6.1.162
Linux Linux 6.19
Linux Linux bb4fa4c0b54aae25e55faeda7f78d0c11b8cd618
Linux Linux 6cb008f1bb23e023dfe615cca5df14570dfc8da5
Linux Linux a11224a016d6d1d46a4d9b6573244448a80d4d7f
Linux Linux a11224a016d6d1d46a4d9b6573244448a80d4d7f
Linux Linux 20e8f2de3688082eeafeb93c8900485b7542457e
Linux Linux 6.6.122
Linux Linux 6.12.67
Linux Linux 6.18.7
Linux Linux 6.1.162
Linux Linux 6.19
References
- git.kernel.org /stable/c/c2670ec4aa49ca226bce9776601e0da37502be07
- git.kernel.org /stable/c/f414b3abbba59ef379a2b3c31f2bdd9358ed5e53
- git.kernel.org /stable/c/9a060970fd7b5e1c561e4ce73cb9949e4269a738
- git.kernel.org /stable/c/dd6ade0fdd59218d71a981ae7c937a304e49209c
- git.kernel.org /stable/c/3f487be81292702a59ea9dbc4088b3360a50e837