Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee592d07 authored by Sam Tygier's avatar Sam Tygier Committed by David Sterba
Browse files

Btrfs: Check metadata redundancy on balance



When converting a filesystem via balance check that metadata mode
is at least as redundant as the data mode. For example give warning
when:
-dconvert=raid1 -mconvert=single

Signed-off-by: default avatarSam Tygier <samtygier@yahoo.co.uk>
[ minor message reformatting ]
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent ca8a51b3
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -3748,6 +3748,13 @@ int btrfs_balance(struct btrfs_balance_control *bctl,
		}
	} while (read_seqretry(&fs_info->profiles_lock, seq));

	if (btrfs_get_num_tolerated_disk_barrier_failures(bctl->meta.target) <
		btrfs_get_num_tolerated_disk_barrier_failures(bctl->data.target)) {
		btrfs_warn(fs_info,
	"metatdata profile 0x%llx has lower redundancy than data profile 0x%llx",
			bctl->meta.target, bctl->data.target);
	}

	if (bctl->sys.flags & BTRFS_BALANCE_ARGS_CONVERT) {
		fs_info->num_tolerated_disk_barrier_failures = min(
			btrfs_calc_num_tolerated_disk_barrier_failures(fs_info),