diff options
-rw-r--r-- | utils.c | 15 | ||||
-rw-r--r-- | utils.h | 1 |
2 files changed, 16 insertions, 0 deletions
@@ -593,6 +593,21 @@ static int parse_one_fs_feature(const char *name, u64 *flags) return !found; } +void btrfs_parse_features_to_string(char *buf, u64 flags) +{ + int i; + + buf[0] = 0; + + for (i = 0; i < ARRAY_SIZE(mkfs_features); i++) { + if (flags & mkfs_features[i].flag) { + if (*buf) + strcat(buf, ", "); + strcat(buf, mkfs_features[i].name); + } + } +} + void btrfs_process_fs_features(u64 flags) { int i; @@ -88,6 +88,7 @@ void units_set_base(unsigned *units, unsigned base); 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); +void btrfs_parse_features_to_string(char *buf, u64 flags); int make_btrfs(int fd, const char *device, const char *label, char *fs_uuid, u64 blocks[6], u64 num_bytes, u32 nodesize, |