[Qemu-devel] [PATCH] vl: Fix to create migration object before block backends again

Markus Armbruster posted 1 patch 6 years, 8 months ago
Test asan failed
Test docker-clang@ubuntu passed
Test docker-mingw@fedora passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190313084317.13586-1-armbru@redhat.com
Maintainers: Paolo Bonzini <pbonzini@redhat.com>
vl.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
[Qemu-devel] [PATCH] vl: Fix to create migration object before block backends again
Posted by Markus Armbruster 6 years, 8 months ago
Recent commit cda4aa9a5a0 moved block backend creation before machine
property evaluation.  This broke qemu-iotests 055.  Turns out we need
to create the migration object before block backends, so block
backends can add migration blockers.  Fix by calling
migration_object_init() earlier, right before configure_blockdev().

Fixes: cda4aa9a5a08777cf13e164c0543bd4888b8adce
Reported-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 vl.c | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/vl.c b/vl.c
index 027b853d92..b3e48eff27 100644
--- a/vl.c
+++ b/vl.c
@@ -4276,10 +4276,17 @@ int main(int argc, char **argv, char **envp)
         exit(0);
     }
 
+    /*
+     * Migration object can only be created after global properties
+     * are applied correctly.
+     */
+    migration_object_init();
+
     /*
      * Note: we need to create block backends before
      * machine_set_property(), so machine properties can refer to
-     * them.
+     * them, and after migration_object_init(), so we can create
+     * migration blockers.
      */
     configure_blockdev(&bdo_queue, machine_class, snapshot);
 
@@ -4297,12 +4304,6 @@ int main(int argc, char **argv, char **envp)
                      machine_class->name, machine_class->deprecation_reason);
     }
 
-    /*
-     * Migration object can only be created after global properties
-     * are applied correctly.
-     */
-    migration_object_init();
-
     if (qtest_chrdev) {
         qtest_init(qtest_chrdev, qtest_log, &error_fatal);
     }
-- 
2.17.2


Re: [Qemu-devel] [PATCH] vl: Fix to create migration object before block backends again
Posted by Markus Armbruster 6 years, 8 months ago
Butterfingers...  Please use
Message-Id: <20190313084330.16015-1-armbru@redhat.com>
and ignore this one.