Fixes bug in calculating pool size

Signed-off-by: Michael Rasmussen <mir@datanom.net>
This commit is contained in:
Michael Rasmussen
2013-10-13 01:51:41 +02:00
committed by Dietmar Maurer
parent 7ecc43edac
commit 1fca146493

View File

@ -93,7 +93,7 @@ sub zfs_parse_size {
sub zfs_get_pool_stats { sub zfs_get_pool_stats {
my ($scfg) = @_; my ($scfg) = @_;
my $size = 0; my $available = 0;
my $used = 0; my $used = 0;
my $text = zfs_request($scfg, undef, 'get', '-o', 'value', '-Hp', my $text = zfs_request($scfg, undef, 'get', '-o', 'value', '-Hp',
@ -102,14 +102,14 @@ sub zfs_get_pool_stats {
my @lines = split /\n/, $text; my @lines = split /\n/, $text;
if($lines[0] =~ /^(\d+)$/) { if($lines[0] =~ /^(\d+)$/) {
$size = $1; $available = $1;
} }
if($lines[1] =~ /^(\d+)$/) { if($lines[1] =~ /^(\d+)$/) {
$used = $1; $used = $1;
} }
return ($size, $used); return ($available, $used);
} }
sub zfs_parse_zvol_list { sub zfs_parse_zvol_list {
@ -512,9 +512,9 @@ sub status {
my $active = 0; my $active = 0;
eval { eval {
($total, $used) = zfs_get_pool_stats($scfg); ($free, $used) = zfs_get_pool_stats($scfg);
$active = 1; $active = 1;
$free = $total - $used; $total = $free + $used;
}; };
warn $@ if $@; warn $@ if $@;