CVE-2026-46159

btrfs: fix btrfs_ioctl_space_info() slot_count TOCTOU which can lead to info-leak

State
Published
Severity
Not scored
Published
May 28, 2026
Updated
Oct 15, 2026
Reserved
May 13, 2026

Read the record on cve.org

Description

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

btrfs: fix btrfs_ioctl_space_info() slot_count TOCTOU which can lead to info-leak

btrfs_ioctl_space_info() has a TOCTOU race between two passes over the block group RAID type lists. The first pass counts entries to determine the allocation size, then the second pass fills the buffer. The groups_sem rwlock is released between passes, allowing concurrent block group removal to reduce the entry count.

When the second pass fills fewer entries than the first pass counted, copy_to_user() copies the full alloc_size bytes including trailing uninitialized kmalloc bytes to userspace.

Fix by copying only total_spaces entries (the actually-filled count from the second pass) instead of alloc_size bytes, and switch to kzalloc so any future copy size mismatch cannot leak heap data.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before f407aad350bdea4db300c47433573b7a41630d33Affected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before d8224b1be6627c6c3b204bfb264508d27c65ac44Affected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before d69a4a6813fdba7c4cc3695a7e843842b240790dAffected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before f5ee467b56764964027c361641f64953fc0f8f9aAffected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before 4fdc6ee0802121d9cd96b8d085e589f51e5a4ec3Affected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before 5d12e0ab009ade48c1bff9324fd9bea2c773d088Affected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before d09d67d5de577cedae3de9497dff217e0ac8b641Affected
  • 7fde62bffb576d384ea49a3aed3403d5609ee5bc to before 973e57c726c1f8e77259d1c8e519519f1e9aea77Affected
LinuxLinux
  • 2.6.34Affected
  • before 2.6.34Not affected
  • 5.10.259 through 5.10.*Not affected
  • 5.15.210 through 5.15.*Not affected
  • 6.1.176 through 6.1.*Not affected
  • 6.6.140 through 6.6.*Not affected
  • 6.12.90 through 6.12.*Not affected
  • 6.18.32 through 6.18.*Not affected
  • 7.0.7 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.