btrfs-progs: qgroup: make large size aligned

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>
master
Fan Chengniang 2015-01-23 09:50:49 +08:00 committed by David Sterba
parent e69e015634
commit 1c93eb0089
1 changed files with 5 additions and 8 deletions

View File

@ -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;