qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH v19 08/10] Implement new driver for block replic


From: Changlong Xie
Subject: Re: [Qemu-block] [PATCH v19 08/10] Implement new driver for block replication
Date: Tue, 7 Jun 2016 12:59:45 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

On 05/20/2016 03:36 PM, Changlong Xie wrote:
+
+        /*
+         * Must protect backup target if backup job was stopped/cancelled
+         * unexpectedly
+         */
+        bdrv_ref(s->hidden_disk->bs);
+
+        backup_start(s->secondary_disk->bs, s->hidden_disk->bs, 0,
+                     MIRROR_SYNC_MODE_NONE, NULL, BLOCKDEV_ON_ERROR_REPORT,
+                     BLOCKDEV_ON_ERROR_REPORT, backup_job_completed,
+                     s, NULL, &local_err);
+        if (local_err) {
+            error_propagate(errp, local_err);
+            backup_job_cleanup(s);
+            bdrv_unref(s->hidden_disk->bs);
+            aio_context_release(aio_context);
+            return;
+        }
+        break;
+    default:
+        aio_context_release(aio_context);
+        abort();
+    }

commit 5c438bc6 introduce BB for I/O, so we don't need protect backup target by ourself now.

-        /*
-         * Must protect backup target if backup job was stopped/cancelled
-         * unexpectedly
-         */
-        bdrv_ref(s->hidden_disk->bs);
-
         backup_start(s->secondary_disk->bs, s->hidden_disk->bs, 0,
MIRROR_SYNC_MODE_NONE, NULL, BLOCKDEV_ON_ERROR_REPORT,
                      BLOCKDEV_ON_ERROR_REPORT, backup_job_completed,
@@ -508,7 +502,6 @@ static void replication_start(ReplicationState *rs, ReplicationMode mode,
         if (local_err) {
             error_propagate(errp, local_err);
             backup_job_cleanup(s);
-            bdrv_unref(s->hidden_disk->bs);
             aio_context_release(aio_context);
             return;
         }

will update in next version.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]