summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnand Jain <Anand.Jain@oracle.com>2013-11-15 19:11:09 +0800
committerChris Mason <chris.mason@fusionio.com>2013-11-15 12:30:13 -0500
commite9ac73b441b1b05b57ce99be1aff02eac6929448 (patch)
treecf2fea17873e5171dd54c6181ae0c2b63a05714f
parent9f0c53f574b242b0d5988db2972c8aac77ef35a9 (diff)
btrfs-progs: for mixed group check opt before default raid profile is enforced
This fixes the regression introduced with the patch btrfs-progs: avoid write to the disk before sure to create fs what happened with this patch is it missed the check to see if the user has the option set before pushing the defaults. Signed-off-by: Anand Jain <anand.jain@oracle.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
-rw-r--r--mkfs.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/mkfs.c b/mkfs.c
index ebd8bb59..33369f94 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -1373,14 +1373,8 @@ int main(int ac, char **av)
if (is_vol_small(file)) {
printf("SMALL VOLUME: forcing mixed metadata/data groups\n");
mixed = 1;
- if (metadata_profile != data_profile) {
- if (metadata_profile_opt || data_profile_opt) {
- fprintf(stderr,
- "With mixed block groups data and metadata profiles must be the same\n");
- exit(1);
- }
- }
}
+
/*
* Set default profiles according to number of added devices.
* For mixed groups defaults are single/single.
@@ -1402,8 +1396,14 @@ int main(int ac, char **av)
}
} else {
u32 best_leafsize = max_t(u32, sysconf(_SC_PAGESIZE), sectorsize);
- metadata_profile = 0;
- data_profile = 0;
+
+ if (metadata_profile_opt || data_profile_opt) {
+ if (metadata_profile != data_profile) {
+ fprintf(stderr,
+ "ERROR: With mixed block groups data and metadata profiles must be the same\n");
+ exit(1);
+ }
+ }
if (!leaf_forced) {
leafsize = best_leafsize;