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

Commit e3176ca2 authored by Ilya Dryomov's avatar Ilya Dryomov
Browse files

Btrfs: stop silently switching single chunks to raid0 on balance



This has been causing a lot of confusion for quite a while now and a lot
of users were surprised by this (some of them were even stuck in a
ENOSPC situation which they couldn't easily get out of).  The addition
of restriper gives users a clear choice between raid0 and drive concat
setup so there's absolutely no excuse for us to keep doing this.

Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
parent ea466794
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -6941,7 +6941,6 @@ static u64 update_block_group_flags(struct btrfs_root *root, u64 flags)
		if (flags & (BTRFS_BLOCK_GROUP_RAID1 |
			     BTRFS_BLOCK_GROUP_RAID10))
			return stripped | BTRFS_BLOCK_GROUP_DUP;
		return flags;
	} else {
		/* they already had raid on here, just return */
		if (flags & stripped)
@@ -6954,9 +6953,9 @@ static u64 update_block_group_flags(struct btrfs_root *root, u64 flags)
		if (flags & BTRFS_BLOCK_GROUP_DUP)
			return stripped | BTRFS_BLOCK_GROUP_RAID1;

		/* turn single device chunks into raid0 */
		return stripped | BTRFS_BLOCK_GROUP_RAID0;
		/* this is drive concat, leave it alone */
	}

	return flags;
}