[lvm-devel] [PATCH] fix dm debug pool issues
Milan Broz
mbroz at redhat.com
Wed Mar 25 17:53:54 UTC 2009
and next obvious problem with pool data caught by pool debug:
- second iteration in loop operates on non-existing object here
Signed-off-by: Milan Broz <mbroz at redhat.com>
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
index 2661e0c..991d63c 100644
--- a/lib/metadata/lv_manip.c
+++ b/lib/metadata/lv_manip.c
@@ -611,12 +611,12 @@ static int _log_parallel_areas(struct dm_pool *mem, struct dm_list *parallel_are
if (!parallel_areas)
return 1;
- if (!dm_pool_begin_object(mem, 256)) {
- log_error("dm_pool_begin_object failed");
- return 0;
- }
-
dm_list_iterate_items(spvs, parallel_areas) {
+ if (!dm_pool_begin_object(mem, 256)) {
+ log_error("dm_pool_begin_object failed");
+ return 0;
+ }
+
dm_list_iterate_items(pvl, &spvs->pvs) {
if (!dm_pool_grow_object(mem, pv_dev_name(pvl->pv), strlen(pv_dev_name(pvl->pv)))) {
log_error("dm_pool_grow_object failed");
More information about the lvm-devel
mailing list