diff options
-rw-r--r-- | mkfs.c | 2 | ||||
-rw-r--r-- | utils.c | 6 | ||||
-rw-r--r-- | utils.h | 2 |
3 files changed, 6 insertions, 4 deletions
@@ -1208,7 +1208,7 @@ int main(int ac, char **av) } free(orig); if (features & BTRFS_FEATURE_LIST_ALL) { - btrfs_list_all_fs_features(); + btrfs_list_all_fs_features(0); exit(0); } break; @@ -606,14 +606,16 @@ void btrfs_process_fs_features(u64 flags) } } -void btrfs_list_all_fs_features(void) +void btrfs_list_all_fs_features(u64 mask_disallowed) { int i; - fprintf(stderr, "Filesystem features available at mkfs time:\n"); + fprintf(stderr, "Filesystem features available:\n"); for (i = 0; i < ARRAY_SIZE(mkfs_features) - 1; i++) { char *is_default = ""; + if (mkfs_features[i].flag & mask_disallowed) + continue; if (mkfs_features[i].flag & BTRFS_MKFS_DEFAULT_FEATURES) is_default = ", default"; fprintf(stderr, "%-20s- %s (0x%llx%s)\n", @@ -85,7 +85,7 @@ void set_argv0(char **argv); void units_set_mode(unsigned *units, unsigned mode); void units_set_base(unsigned *units, unsigned base); -void btrfs_list_all_fs_features(void); +void btrfs_list_all_fs_features(u64 mask_disallowed); char* btrfs_parse_fs_features(char *namelist, u64 *flags); void btrfs_process_fs_features(u64 flags); |