btrfs-progs: qgroup: make large size aligned
authorFan Chengniang <fancn.fnst@cn.fujitsu.com>
Fri, 23 Jan 2015 01:50:49 +0000 (09:50 +0800)
committerDavid Sterba <dsterba@suse.cz>
Tue, 27 Jan 2015 13:46:12 +0000 (14:46 +0100)
Problem: when the size is too big, the output format will be unaligned.
The __update__columns_max_len function has been updated to fix this
problem.

Signed-off-by: Fan Chengniang <fancn.fnst@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
qgroup.c

index bfc11d2..d59f4bb 100644 (file)
--- a/qgroup.c
+++ b/qgroup.c
@@ -915,6 +915,7 @@ static void __update_columns_max_len(struct btrfs_qgroup *bq,
        struct btrfs_qgroup_list *list = NULL;
        char tmp[100];
        int len;
+       unsigned unit_mode = btrfs_qgroup_columns[column].unit_mode;
 
        switch (column) {
 
@@ -926,26 +927,22 @@ static void __update_columns_max_len(struct btrfs_qgroup *bq,
                        btrfs_qgroup_columns[column].max_len = len;
                break;
        case BTRFS_QGROUP_RFER:
-               sprintf(tmp, "%llu", bq->rfer);
-               len = strlen(tmp);
+               len = strlen(pretty_size_mode(bq->rfer, unit_mode));
                if (btrfs_qgroup_columns[column].max_len < len)
                        btrfs_qgroup_columns[column].max_len = len;
                break;
        case BTRFS_QGROUP_EXCL:
-               sprintf(tmp, "%llu", bq->excl);
-               len = strlen(tmp);
+               len = strlen(pretty_size_mode(bq->excl, unit_mode));
                if (btrfs_qgroup_columns[column].max_len < len)
                        btrfs_qgroup_columns[column].max_len = len;
                break;
        case BTRFS_QGROUP_MAX_RFER:
-               sprintf(tmp, "%llu", bq->max_rfer);
-               len = strlen(tmp);
+               len = strlen(pretty_size_mode(bq->max_rfer, unit_mode));
                if (btrfs_qgroup_columns[column].max_len < len)
                        btrfs_qgroup_columns[column].max_len = len;
                break;
        case BTRFS_QGROUP_MAX_EXCL:
-               sprintf(tmp, "%llu", bq->max_excl);
-               len = strlen(tmp);
+               len = strlen(pretty_size_mode(bq->max_excl, unit_mode));
                if (btrfs_qgroup_columns[column].max_len < len)
                        btrfs_qgroup_columns[column].max_len = len;
                break;