summaryrefslogtreecommitdiffstats
path: root/tools/polldaemon.c
diff options
context:
space:
mode:
authorAlasdair Kergon <agk@redhat.com>2009-10-01 00:35:29 +0000
committerAlasdair Kergon <agk@redhat.com>2009-10-01 00:35:29 +0000
commit78ad1549a53dbaee7679e635c1ba1c6d15506a52 (patch)
tree8cf30c7f8fb1458dd4e226514957c30758deb7f5 /tools/polldaemon.c
parent4b12fa1377d2d5bccf30ebac96a2c81644d14ed4 (diff)
downloadlvm2-78ad1549a53dbaee7679e635c1ba1c6d15506a52.tar.gz
lvm2-78ad1549a53dbaee7679e635c1ba1c6d15506a52.tar.xz
lvm2-78ad1549a53dbaee7679e635c1ba1c6d15506a52.zip
Introduce percent_range_t and centralise snapshot full/mirror in-sync checks.
Diffstat (limited to 'tools/polldaemon.c')
-rw-r--r--tools/polldaemon.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/polldaemon.c b/tools/polldaemon.c
index a600345b..4e59bee9 100644
--- a/tools/polldaemon.c
+++ b/tools/polldaemon.c
@@ -68,10 +68,12 @@ progress_t poll_mirror_progress(struct cmd_context *cmd,
struct daemon_parms *parms)
{
float segment_percent = 0.0, overall_percent = 0.0;
+ percent_range_t percent_range;
uint32_t event_nr = 0;
if (!lv_mirror_percent(cmd, lv, !parms->interval, &segment_percent,
- &event_nr)) {
+ &percent_range, &event_nr) ||
+ (percent_range == PERCENT_INVALID)) {
log_error("ABORTING: Mirror percentage check failed.");
return PROGRESS_CHECK_FAILED;
}
@@ -84,7 +86,7 @@ progress_t poll_mirror_progress(struct cmd_context *cmd,
log_verbose("%s: %s: %.1f%%", name, parms->progress_title,
overall_percent);
- if (segment_percent < 100.0)
+ if (percent_range != PERCENT_100)
return PROGRESS_UNFINISHED;
if (overall_percent >= 100.0)