]> sourceware.org Git - lvm2.git/commitdiff
Was using dm_list_iterate_items when I should have been using
authorJonathan Earl Brassow <jbrassow@redhat.com>
Wed, 27 Jan 2010 22:28:05 +0000 (22:28 +0000)
committerJonathan Earl Brassow <jbrassow@redhat.com>
Wed, 27 Jan 2010 22:28:05 +0000 (22:28 +0000)
*_safe.  This had the effect of segfaulting the log daemon when
converting a mirror from one log type to another.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
WHATS_NEW
daemons/cmirrord/cluster.c

index af4c5ec22bb90a1db0792d98f667511e6aa62825..cbe936ca679f1e303e1be77b264caeb280f535c5 100644 (file)
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
 Version 2.02.60 - 23rd January 2010
 ===================================
+  Fix lvconvert issue with cluster mirrors due to un'_safe' list processing
   Fix pvmove abort workaround to be cluster-aware when temporary mirror activation fails.
   Always query device by using uuid only and not name in clvmd.
   Add missing metadata reverts in pvmove error path.
index a77a11f221a9c698a69aaac2271c8f977e43ac0f..c266927135dff5f7f94b892ae42be4e9956b0190 100644 (file)
@@ -858,9 +858,9 @@ static int resend_requests(struct clog_cpg *entry)
 static int do_cluster_work(void *data __attribute((unused)))
 {
        int r = SA_AIS_OK;
-       struct clog_cpg *entry;
+       struct clog_cpg *entry, *tmp;
 
-       dm_list_iterate_items(entry, &clog_cpg_list) {
+       dm_list_iterate_items_safe(entry, tmp, &clog_cpg_list) {
                r = cpg_dispatch(entry->handle, CPG_DISPATCH_ALL);
                if (r != SA_AIS_OK)
                        LOG_ERROR("cpg_dispatch failed: %s", str_ais_error(r));
This page took 0.047648 seconds and 5 git commands to generate.