summaryrefslogtreecommitdiff
path: root/mkfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'mkfs.c')
-rw-r--r--mkfs.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/mkfs.c b/mkfs.c
index cd0af9ef..f825e1b6 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -1168,7 +1168,11 @@ static int parse_one_fs_feature(const char *name, u64 *flags)
int found = 0;
for (i = 0; i < ARRAY_SIZE(mkfs_features); i++) {
- if (!strcmp(mkfs_features[i].name, name)) {
+ if (name[0] == '^' &&
+ !strcmp(mkfs_features[i].name, name + 1)) {
+ *flags &= ~ mkfs_features[i].flag;
+ found = 1;
+ } else if (!strcmp(mkfs_features[i].name, name)) {
*flags |= mkfs_features[i].flag;
found = 1;
}