diff options
Diffstat (limited to 'btrfstune.c')
-rw-r--r-- | btrfstune.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/btrfstune.c b/btrfstune.c index cba00a8c..075fbc63 100644 --- a/btrfstune.c +++ b/btrfstune.c @@ -33,6 +33,7 @@ #include "version.h" static char *device; +static int force = 0; static int update_seeding_flag(struct btrfs_root *root, int set_flag) { @@ -44,8 +45,10 @@ static int update_seeding_flag(struct btrfs_root *root, int set_flag) super_flags = btrfs_super_flags(disk_super); if (set_flag) { if (super_flags & BTRFS_SUPER_FLAG_SEEDING) { - fprintf(stderr, "seeding flag is already set on %s\n", - device); + if (force) + return 0; + else + fprintf(stderr, "seeding flag is already set on %s\n", device); return 1; } super_flags |= BTRFS_SUPER_FLAG_SEEDING; @@ -104,7 +107,7 @@ static void print_usage(void) fprintf(stderr, "\t-S value\tpositive value will enable seeding, zero to disable, negative is not allowed\n"); fprintf(stderr, "\t-r \t\tenable extended inode refs\n"); fprintf(stderr, "\t-x \t\tenable skinny metadata extent refs\n"); - fprintf(stderr, "\t-f \t\tforce to clear flags, make sure that you are aware of the dangers\n"); + fprintf(stderr, "\t-f \t\tforce to set or clear flags, make sure that you are aware of the dangers\n"); } int main(int argc, char *argv[]) @@ -116,7 +119,6 @@ int main(int argc, char *argv[]) int seeding_flag = 0; u64 seeding_value = 0; int skinny_flag = 0; - int force = 0; int ret; optind = 1; |