summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryn M. Reeves <bmr@redhat.com>2016-06-19 14:40:03 +0100
committerBryn M. Reeves <bmr@redhat.com>2016-07-05 19:53:16 +0100
commit8b179e09a4b921d2be925c997dd1125176e616c5 (patch)
tree2f72eb7494e966cbffaacfb082891d1d3ad84c8c
parent402d840aa726277a10ed026c7c3a660800669b6d (diff)
downloadlvm2-8b179e09a4b921d2be925c997dd1125176e616c5.tar.gz
dmstats: do not walk regions if deleting a single id
-rw-r--r--tools/dmsetup.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/tools/dmsetup.c b/tools/dmsetup.c
index f7a3f740a..dfb362bfa 100644
--- a/tools/dmsetup.c
+++ b/tools/dmsetup.c
@@ -4965,16 +4965,20 @@ static int _stats_delete(CMD_ARGS)
goto out;
}
- dm_stats_walk_do(dms) {
- if (_switches[ALL_REGIONS_ARG])
+ if (_switches[ALL_REGIONS_ARG]) {
+ dm_stats_walk_do(dms) {
region_id = dm_stats_get_current_region(dms);
- if (!dm_stats_delete_region(dms, region_id)) {
- log_error("Could not delete statistics region.");
- goto out;
- }
+ if (!dm_stats_delete_region(dms, region_id)) {
+ log_error("Could not delete statistics region.");
+ goto out;
+ }
+ log_info("Deleted statistics region %" PRIu64, region_id);
+ dm_stats_walk_next_region(dms);
+ } dm_stats_walk_while(dms);
+ } else {
+ dm_stats_delete_region(dms, region_id);
log_info("Deleted statistics region %" PRIu64, region_id);
- dm_stats_walk_next_region(dms);
- } dm_stats_walk_while(dms);
+ }
r = 1;