diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/lvconvert.c | 15 | ||||
-rw-r--r-- | tools/lvcreate.c | 2 | ||||
-rw-r--r-- | tools/lvmcmdline.c | 2 | ||||
-rw-r--r-- | tools/lvresize.c | 13 | ||||
-rw-r--r-- | tools/lvscan.c | 13 | ||||
-rw-r--r-- | tools/polldaemon.c | 17 | ||||
-rw-r--r-- | tools/tools.h | 6 |
7 files changed, 32 insertions, 36 deletions
diff --git a/tools/lvconvert.c b/tools/lvconvert.c index 40384a0b..95b60cc6 100644 --- a/tools/lvconvert.c +++ b/tools/lvconvert.c @@ -425,23 +425,24 @@ static progress_t _poll_merge_progress(struct cmd_context *cmd, const char *name __attribute__((unused)), struct daemon_parms *parms) { - float percent = 0.0; - percent_range_t percent_range; + percent_t percent = PERCENT_0; - if (!lv_snapshot_percent(lv, &percent, &percent_range)) { + if (!lv_snapshot_percent(lv, &percent)) { log_error("%s: Failed query for merging percentage. Aborting merge.", lv->name); return PROGRESS_CHECK_FAILED; - } else if (percent_range == PERCENT_INVALID) { + } else if (percent == PERCENT_INVALID) { log_error("%s: Merging snapshot invalidated. Aborting merge.", lv->name); return PROGRESS_CHECK_FAILED; } if (parms->progress_display) - log_print("%s: %s: %.1f%%", lv->name, parms->progress_title, percent); + log_print("%s: %s: %.1f%%", lv->name, parms->progress_title, + percent_to_float(percent)); else - log_verbose("%s: %s: %.1f%%", lv->name, parms->progress_title, percent); + log_verbose("%s: %s: %.1f%%", lv->name, parms->progress_title, + percent_to_float(percent)); - if (percent_range == PERCENT_0) + if (percent == PERCENT_0) return PROGRESS_FINISHED_ALL; return PROGRESS_UNFINISHED; diff --git a/tools/lvcreate.c b/tools/lvcreate.c index c7cc2308..dec786b8 100644 --- a/tools/lvcreate.c +++ b/tools/lvcreate.c @@ -19,7 +19,7 @@ #include <fcntl.h> struct lvcreate_cmdline_params { - percent_t percent; + percent_type_t percent; uint64_t size; char **pvs; int pv_count; diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c index 49a460de..9f20d4b4 100644 --- a/tools/lvmcmdline.c +++ b/tools/lvmcmdline.c @@ -126,7 +126,7 @@ sign_t arg_sign_value(struct cmd_context *cmd, int a, const sign_t def) return arg_count(cmd, a) ? cmd->arg_values[a].sign : def; } -percent_t arg_percent_value(struct cmd_context *cmd, int a, const percent_t def) +percent_type_t arg_percent_value(struct cmd_context *cmd, int a, const percent_type_t def) { return arg_count(cmd, a) ? cmd->arg_values[a].percent : def; } diff --git a/tools/lvresize.c b/tools/lvresize.c index ca707f40..9ce73b77 100644 --- a/tools/lvresize.c +++ b/tools/lvresize.c @@ -31,7 +31,7 @@ struct lvresize_params { uint32_t extents; uint64_t size; sign_t sign; - percent_t percent; + percent_type_t percent; enum { LV_ANY = 0, @@ -282,24 +282,23 @@ static int _lvresize_params(struct cmd_context *cmd, int argc, char **argv, static int _adjust_policy_params(struct cmd_context *cmd, struct logical_volume *lv, struct lvresize_params *lp) { - float percent; - percent_range_t range; + percent_t percent; int policy_threshold, policy_amount; policy_threshold = find_config_tree_int(cmd, "activation/snapshot_autoextend_threshold", - DEFAULT_SNAPSHOT_AUTOEXTEND_THRESHOLD); + DEFAULT_SNAPSHOT_AUTOEXTEND_THRESHOLD) * PERCENT_1; policy_amount = find_config_tree_int(cmd, "activation/snapshot_autoextend_percent", DEFAULT_SNAPSHOT_AUTOEXTEND_PERCENT); - if (policy_threshold >= 100) + if (policy_threshold >= PERCENT_100) return 1; /* nothing to do */ - if (!lv_snapshot_percent(lv, &percent, &range)) + if (!lv_snapshot_percent(lv, &percent)) return_0; - if (range != PERCENT_0_TO_100 || percent <= policy_threshold) + if (!(PERCENT_0 < percent && percent < PERCENT_100) || percent <= policy_threshold) return 1; /* nothing to do */ lp->extents = policy_amount; diff --git a/tools/lvscan.c b/tools/lvscan.c index e028eaee..638d2f57 100644 --- a/tools/lvscan.c +++ b/tools/lvscan.c @@ -23,8 +23,7 @@ static int lvscan_single(struct cmd_context *cmd, struct logical_volume *lv, uint64_t lv_capacity_total = 0; int inkernel, snap_active = 1; struct lv_segment *snap_seg = NULL; - float snap_percent; /* fused, fsize; */ - percent_range_t percent_range; + percent_t snap_percent; /* fused, fsize; */ const char *active_str, *snapshot_str; @@ -37,17 +36,15 @@ static int lvscan_single(struct cmd_context *cmd, struct logical_volume *lv, origin_list) { if (inkernel && (snap_active = lv_snapshot_percent(snap_seg->cow, - &snap_percent, - &percent_range))) - if (percent_range == PERCENT_INVALID) + &snap_percent))) + if (snap_percent == PERCENT_INVALID) snap_active = 0; } snap_seg = NULL; } else if (lv_is_cow(lv)) { if (inkernel && - (snap_active = lv_snapshot_percent(lv, &snap_percent, - &percent_range))) - if (percent_range == PERCENT_INVALID) + (snap_active = lv_snapshot_percent(lv, &snap_percent))) + if (snap_percent == PERCENT_INVALID) snap_active = 0; } diff --git a/tools/polldaemon.c b/tools/polldaemon.c index 41a5cd67..8372ef25 100644 --- a/tools/polldaemon.c +++ b/tools/polldaemon.c @@ -74,30 +74,29 @@ progress_t poll_mirror_progress(struct cmd_context *cmd, struct logical_volume *lv, const char *name, struct daemon_parms *parms) { - float segment_percent = 0.0, overall_percent = 0.0; - percent_range_t percent_range, overall_percent_range; + percent_t segment_percent = PERCENT_0, overall_percent = PERCENT_0; uint32_t event_nr = 0; if (!lv_is_mirrored(lv) || !lv_mirror_percent(cmd, lv, !parms->interval, &segment_percent, - &percent_range, &event_nr) || - (percent_range == PERCENT_INVALID)) { + &event_nr) || + (segment_percent == PERCENT_INVALID)) { log_error("ABORTING: Mirror percentage check failed."); return PROGRESS_CHECK_FAILED; } - overall_percent = copy_percent(lv, &overall_percent_range); + overall_percent = copy_percent(lv); if (parms->progress_display) log_print("%s: %s: %.1f%%", name, parms->progress_title, - overall_percent); + percent_to_float(overall_percent)); else log_verbose("%s: %s: %.1f%%", name, parms->progress_title, - overall_percent); + percent_to_float(overall_percent)); - if (percent_range != PERCENT_100) + if (segment_percent != PERCENT_100) return PROGRESS_UNFINISHED; - if (overall_percent_range == PERCENT_100) + if (overall_percent == PERCENT_100) return PROGRESS_FINISHED_ALL; return PROGRESS_FINISHED_SEGMENT; diff --git a/tools/tools.h b/tools/tools.h index 07261c8b..cfbceeb4 100644 --- a/tools/tools.h +++ b/tools/tools.h @@ -85,7 +85,7 @@ typedef enum { PERCENT_LV, PERCENT_PVS, PERCENT_ORIGIN -} percent_t; +} percent_type_t; enum { CHANGE_AY = 0, @@ -106,7 +106,7 @@ struct arg_values { int64_t i64_value; uint64_t ui64_value; sign_t sign; - percent_t percent; + percent_type_t percent; /* void *ptr; // Currently not used. */ }; @@ -174,7 +174,7 @@ int64_t arg_int64_value(struct cmd_context *cmd, int a, const int64_t def); uint64_t arg_uint64_value(struct cmd_context *cmd, int a, const uint64_t def); const void *arg_ptr_value(struct cmd_context *cmd, int a, const void *def); sign_t arg_sign_value(struct cmd_context *cmd, int a, const sign_t def); -percent_t arg_percent_value(struct cmd_context *cmd, int a, const percent_t def); +percent_type_t arg_percent_value(struct cmd_context *cmd, int a, const percent_type_t def); int arg_count_increment(struct cmd_context *cmd, int a); unsigned grouped_arg_count(const struct arg_values *av, int a); |