From: Zygo Blaxell Date: Sat, 19 Sep 2026 16:31:58 +0000 (-0400) Subject: Merge branches (11 topics incl. balance-resume) into 6.18/testing X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fheads%2F6.18%2Ftesting;p=linux Merge branches (11 topics incl. balance-resume) into 6.18/testing Also merges '6.18/topics/delayed-ref-fixes' (resume the delayed-ref merge walk instead of restarting it). Also merges '6.18/topics/logical-ino' (added 2026-09-19: BTRFS_LOGICAL_INO_ARGS_COMMIT_ROOT, an opt-in commit-root walk so LOGICAL_INO callers stop pinning the tree mod log). --- 8e05624fd13d5d241d975057e01d53af3ecfed5f diff --cc fs/btrfs/block-group.c index e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,828969daa2675,12ab34c571b5d,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece,e9ee10bee2ece..4628f4adf76ef --- a/fs/btrfs/block-group.c +++ b/fs/btrfs/block-group.c @@@@@@@@@@@@@@@ -3090,6 -3090,6 -3090,6 -3090,6 -3090,6 -3090,6 -3090,6 -3090,6 -5952,14 -3145,8 -3090,6 -3090,6 -3090,6 -3090,6 +6007,16 @@@@@@@@@@@@@@@ unlock_out mutex_unlock(&fs_info->ro_block_group_mutex); btrfs_end_transaction(trans); - if (ret) ++++++++ +++++ /* ++++++++ +++++ * The group is read-only: close and drain its open stripe runs. An ++++++++ +++++ * allocation racing with the read-only transition either installed ++++++++ +++++ * its run before this (closed and drained here), or observes ->ro ++++++++ +++++ * under the stripe_run_lock and backs out. ++++++++ +++++ */ ++++++++ +++++ if (!ret) ++++++++ +++++ btrfs_retire_block_group_stripes(cache); ++++++++++++++ else +++++++++ ++++ btrfs_bg_unblock_nocow(cache); return ret; } diff --cc fs/btrfs/raid56.c index 4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,77ffc59262e3e,773e5d351697a,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb,4d4852f2ba7eb..a14afd64d04ec --- a/fs/btrfs/raid56.c +++ b/fs/btrfs/raid56.c @@@@@@@@@@@@@@@ -1798,6 -1798,6 -1798,6 -1798,6 -1798,6 -1798,6 -1798,6 -2053,12 -2231,7 -1798,6 -1798,6 -1798,6 -1798,6 -1798,6 +2486,12 @@@@@@@@@@@@@@@ static int verify_one_sector(struct btr /* No way to verify P/Q as they are not covered by data csum. */ if (stripe_nr >= rbio->nr_data) return 0; +++++++ +++++ +++++++ ++++++ /* No csum for this sector, nothing to verify against. */ +++++++ ++++++ if (!test_bit(stripe_nr * rbio->stripe_nsectors + sector_nr, +++++++ ++++++ rbio->csum_bitmap)) +++++++ ++++++ return 0; +++++++ ++++++ /* * If we're rebuilding a read, we have to use pages from the * bio list if possible. diff --cc fs/btrfs/raid56.h index 84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,f1384f60e44fd,9b8cc160803db,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8,84c4d1d29c7a8..18fc2109aa0c9 --- a/fs/btrfs/raid56.h +++ b/fs/btrfs/raid56.h @@@@@@@@@@@@@@@ -206,5 -206,5 -206,5 -206,5 -206,5 -206,5 -206,5 -214,6 -217,7 -206,5 -206,5 -206,5 -206,5 -206,5 +225,8 @@@@@@@@@@@@@@@ void raid56_parity_cache_data_folios(st int btrfs_alloc_stripe_hash_table(struct btrfs_fs_info *info); void btrfs_free_stripe_hash_table(struct btrfs_fs_info *info); +++++++ ++++++void btrfs_raid56_uncache_range(struct btrfs_fs_info *info, u64 start, u64 len); ++++++++ +++++void btrfs_flush_parked_rbios(struct btrfs_fs_info *fs_info, u64 start, ++++++++ +++++ u64 num_bytes, bool force); #endif