diff options
author | Chris Mason <chris.mason@oracle.com> | 2008-04-16 11:14:21 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@hera.kernel.org> | 2008-04-16 11:14:21 -0400 |
commit | 1f81c1b6fcc17d6609ba0327aca7cedd967c6731 (patch) | |
tree | 95c58de0a2363c20016a3d99423a2b63cf2e25ef /mkfs.c | |
parent | 951fd7371c5719f0491e0a8a524cf5be43729412 (diff) |
Add raid10 support
Diffstat (limited to 'mkfs.c')
-rw-r--r-- | mkfs.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -203,7 +203,10 @@ static int create_raid_groups(struct btrfs_trans_handle *trans, if (num_devices == 1) allowed = BTRFS_BLOCK_GROUP_DUP; - else + else if (num_devices >= 4) { + allowed = BTRFS_BLOCK_GROUP_RAID0 | BTRFS_BLOCK_GROUP_RAID1 | + BTRFS_BLOCK_GROUP_RAID10; + } else allowed = BTRFS_BLOCK_GROUP_RAID0 | BTRFS_BLOCK_GROUP_RAID1; if (allowed & metadata_profile) { @@ -246,6 +249,8 @@ static u64 parse_profile(char *s) return BTRFS_BLOCK_GROUP_RAID0; } else if (strcmp(s, "raid1") == 0) { return BTRFS_BLOCK_GROUP_RAID1 | BTRFS_BLOCK_GROUP_DUP; + } else if (strcmp(s, "raid10") == 0) { + return BTRFS_BLOCK_GROUP_RAID10 | BTRFS_BLOCK_GROUP_DUP; } else if (strcmp(s, "single") == 0) { return 0; } else { |