summaryrefslogtreecommitdiff
path: root/cmds-fi-usage.c
diff options
context:
space:
mode:
authorDimitri John Ledkov <xnox@ubuntu.com>2018-07-23 14:32:01 +0100
committerDimitri John Ledkov <xnox@ubuntu.com>2018-07-23 14:32:01 +0100
commit3b9cf4c8cda0818e4d3f9892ece9f7d99de13b03 (patch)
tree59446f505b5bb3b31b1b3bb81af997dda68407c2 /cmds-fi-usage.c
parentf22f0302575d3a167ee550470c922de82e34342b (diff)
Diffstat (limited to 'cmds-fi-usage.c')
-rw-r--r--cmds-fi-usage.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/cmds-fi-usage.c b/cmds-fi-usage.c
index de7ad668..3bd2ccdf 100644
--- a/cmds-fi-usage.c
+++ b/cmds-fi-usage.c
@@ -629,7 +629,7 @@ int load_chunk_and_device_info(int fd, struct chunk_info **chunkinfo,
ret = load_chunk_info(fd, chunkinfo, chunkcount);
if (ret == -EPERM) {
warning(
-"cannot read detailed chunk info, RAID5/6 numbers will be incorrect, run as root");
+"cannot read detailed chunk info, per-device usage will not be shown, run as root");
} else if (ret) {
return ret;
}
@@ -660,7 +660,7 @@ static u64 calc_chunk_size(struct chunk_info *ci)
else if (ci->type & BTRFS_BLOCK_GROUP_RAID6)
return ci->size / (ci->num_stripes -2);
else if (ci->type & BTRFS_BLOCK_GROUP_RAID10)
- return ci->size / ci->num_stripes;
+ return ci->size / (ci->num_stripes / 2);
return ci->size;
}
@@ -923,9 +923,11 @@ static void _cmd_filesystem_usage_linear(unsigned unit_mode,
printf("\n");
}
- printf("Unallocated:\n");
- print_unused(info_ptr, info_count, device_info_ptr, device_info_count,
- unit_mode | UNITS_NEGATIVE);
+ if (info_count) {
+ printf("Unallocated:\n");
+ print_unused(info_ptr, info_count, device_info_ptr,
+ device_info_count, unit_mode | UNITS_NEGATIVE);
+ }
}
static int print_filesystem_usage_by_chunk(int fd,
@@ -936,9 +938,6 @@ static int print_filesystem_usage_by_chunk(int fd,
struct btrfs_ioctl_space_args *sargs;
int ret = 0;
- if (!chunkinfo)
- return 0;
-
sargs = load_space_info(fd, path);
if (!sargs) {
ret = 1;