diff options
author | Fan Chengniang <fancn.fnst@cn.fujitsu.com> | 2015-01-19 15:27:30 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.cz> | 2015-01-19 19:19:14 +0100 |
commit | f66d17814b58697aac579c90ee3c906e6f65720b (patch) | |
tree | 53e50b5e1bba392b76d5585e7547e330ef093839 /btrfstune.c | |
parent | 188e79e2fcac8cdf474d9a23adfcce48e319c745 (diff) |
btrfs-progs: btrfstune: force to set seeding flags
Now we can use -f with -S option when setting seeding flags or clearing
seeding flags
Reported-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Signed-off-by: Fan Chengniang <fancn.fnst@cn.fujitsu.com>
[updated docs]
Signed-off-by: David Sterba <dsterba@suse.cz>
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; |