Skip to contentSkip to conversation

Btrfs fixes for 7.0-rc5, part 2

GIT PULL Merged David Sterba 2 participants 2 messages Mar 21 Btrfs file system

lore
Share & tools
lore

David Sterba

author maintainer
#0 lore raw

Hi,

another batch of fixes for problems that have been identified by tools analyzing code or by fuzzing. Most of them are short, two patches fix the same thing in many places so the diffs are bigger.

- handle potential NULL pointer errors after attempting to read extent and checksum trees

- prevent ENOSPC when creating many qgroups by ioctls in the same transaction

- encoded write ioctl fixes (on setups with 64K page and 4K block size)
- fix unexpected bio length
- do not let compressed bios and pages interfere with page cache

- compression fixes on setups with 64K page and 4K block size: fix folio length assertions (zstd and lzo)

- remap tree fixes
- make sure to hold block group reference while moving it
- handle early exit when moving block group to unused list

- handle deleted subvolumes with inconsistent state of deletion progress

----------------------------------------------------------------
The following changes since commit fc1cd1f18c34f91e78362f9629ab9fd43b9dcab9:

btrfs: tree-checker: fix misleading root drop_level error message (2026-03-13 12:49:25 +0100)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git tags/for-7.0-rc4-tag

for you to fetch changes up to b17b79ff896305fd74980a5f72afec370ee88ca4:

btrfs: reject root items with drop_progress and zero drop_level (2026-03-17 11:43:08 +0100)

----------------------------------------------------------------
Filipe Manana (3):
btrfs: check for NULL root after calls to btrfs_extent_root()
btrfs: check for NULL root after calls to btrfs_csum_root()
btrfs: reserve enough transaction items for qgroup ioctls

Mark Harmstone (2):
btrfs: hold block group reference during entire move_existing_remap()
btrfs: check block group before marking it unused in balance_remap_chunks()

Qu Wenruo (4):
btrfs: fix a bug that makes encoded write bio larger than expected
btrfs: do not touch page cache for encoded writes
btrfs: fix an incorrect ASSERT() condition inside zstd_decompress_bio()
btrfs: fix an incorrect ASSERT() condition inside lzo_decompress_bio()

ZhengYuan Huang (1):
btrfs: reject root items with drop_progress and zero drop_level

 fs/btrfs/backref.c         | 28 +++++++++++++
 fs/btrfs/block-group.c     | 36 +++++++++++++++++
 fs/btrfs/compression.c     | 11 ++++--
 fs/btrfs/disk-io.c         | 20 ++++++++--
 fs/btrfs/extent-tree.c     | 98 +++++++++++++++++++++++++++++++++++++++++++---
 fs/btrfs/file-item.c       |  7 ++++
 fs/btrfs/free-space-tree.c |  9 ++++-
 fs/btrfs/inode.c           | 25 +++++++++---
 fs/btrfs/ioctl.c           | 12 ++++--
 fs/btrfs/lzo.c             |  4 +-
 fs/btrfs/qgroup.c          |  8 ++++
 fs/btrfs/raid56.c          | 12 +++++-
 fs/btrfs/relocation.c      | 39 ++++++++++++++----
 fs/btrfs/tree-checker.c    | 17 ++++++++
 fs/btrfs/tree-log.c        | 21 ++++++++++
 fs/btrfs/volumes.c         | 25 ++++++++----
 fs/btrfs/zoned.c           |  7 ++++
 fs/btrfs/zstd.c            |  2 +-
 18 files changed, 341 insertions(+), 40 deletions(-)
merge bot Merged
#1 lore raw
The pull request you sent on Sat, 21 Mar 2026 14:00:50 +0100:

The pull request you sent on Sat, 21 Mar 2026 14:00:50 +0100:

Quoted 1 line

git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git tags/for-7.0-rc4-tag

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8991448e56cb2118b561eeda193af53b4ff6b632

Thank you!

Signature · 2 lines
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html