]> git.proxmox.com Git - pve-qemu-kvm.git/commitdiff
fix backup_cancel
authorDietmar Maurer <dietmar@proxmox.com>
Mon, 29 Dec 2014 06:20:34 +0000 (07:20 +0100)
committerDietmar Maurer <dietmar@proxmox.com>
Mon, 29 Dec 2014 06:20:34 +0000 (07:20 +0100)
debian/patches/backup-do-not-use-bdrv-drain-all.patch [new file with mode: 0644]
debian/patches/series

diff --git a/debian/patches/backup-do-not-use-bdrv-drain-all.patch b/debian/patches/backup-do-not-use-bdrv-drain-all.patch
new file mode 100644 (file)
index 0000000..c0c8e6d
--- /dev/null
@@ -0,0 +1,28 @@
+do not use  bdrv_drain_all()
+
+This seems to hang now (qemu 2.2), causing timeouts.
+
+Index: new/blockdev.c
+===================================================================
+--- new.orig/blockdev.c        2014-12-29 06:27:15.000000000 +0100
++++ new/blockdev.c     2014-12-29 07:11:53.000000000 +0100
+@@ -2107,9 +2107,6 @@
+         vma_writer_set_error(backup_state.vmaw, "backup cancelled");
+     }
+-    /* drain all i/o (awake jobs waiting for aio) */
+-    bdrv_drain_all();
+-
+     GList *l = backup_state.di_list;
+     while (l) {
+         PVEBackupDevInfo *di = (PVEBackupDevInfo *)l->data;
+@@ -2118,8 +2115,7 @@
+             BlockJob *job = di->bs->job;
+             if (job) {
+                 if (!di->completed) {
+-                     block_job_cancel_sync(job);
+-                     bdrv_drain_all(); /* drain all i/o (awake jobs waiting for aio) */
++                    block_job_cancel_sync(job);
+                 }
+             }
+         }
index e5bc4f53bfbf51a055c58fe9e24f79149787c05b..14c982fe57934c0e04497453864245942bfc8e4a 100644 (file)
@@ -23,6 +23,7 @@ backup-do-not-return-errors-in-dump-callback.patch
 backup-vma-correctly-propagate-error.patch
 backup-vma-remove-async-queue.patch
 backup-run-flush-inside-coroutine.patch
+backup-do-not-use-bdrv-drain-all.patch
 internal-snapshot-async.patch
 disable-efi-enable-pxe-roms.patch
 backup-vma-allow-empty-backups.patch