summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2016-05-27 13:48:30 +0200
committerZdenek Kabelac <zkabelac@redhat.com>2016-05-27 15:47:24 +0200
commite9ee2cb6b6cf20893ab753d7129f759ba8faa931 (patch)
treed9f9b9314ad88016b0eaa879983e44532fedb785
parent780424639afe3e9a91e85bf3f88142606833f310 (diff)
downloadlvm2-e9ee2cb6b6cf20893ab753d7129f759ba8faa931.tar.gz
report: fix report copy_percent value
When mirror/raid called copy_percent function to return, when 100% was supposed to be returned, wrong float 100.0 value could have been reported back instead of dm_percent_t DM_PERCENT_100. There is broken API somewhere, since the function here rely on actively being modifid VG content even when doing 'lvs' operation. (extents_copies)
-rw-r--r--WHATS_NEW1
-rw-r--r--lib/metadata/lv_manip.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/WHATS_NEW b/WHATS_NEW
index fa13ac886..2b6e0fb66 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.155 -
================================
+ Correcting value in copy_percent() for 100%.
Update vgreduce to use process_each_vg.
Update lvconvert to use process_each_lv.
Update pvscan to use process_each_vg for autoactivation.
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index 6c2d4e5a9..b9419790c 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -872,7 +872,7 @@ dm_percent_t copy_percent(const struct logical_volume *lv)
numerator += seg->area_len;
}
- return denominator ? dm_make_percent(numerator, denominator) : 100.0;
+ return denominator ? dm_make_percent(numerator, denominator) : DM_PERCENT_100;
}
/* Round up extents to next stripe boundary for number of stripes */