Revert "vl: Fix to create migration object before block backends again"

This reverts commit e60483f2f8.

Recent commit cda4aa9a5a moved block backend creation before machine
property evaluation.  This broke block backends registering migration
blockers.  Commit e60483f2f8 fixed it by moving migration object
creation before block backend creation.  This broke migration with
Xen.  Turns out we need to configure the accelerator before we create
the migration object so that Xen's accelerator compat properties get
applied.  Revert the flawed commit.  This fixes the Xen regression,
but brings back the block backend regression.  The next commits will
fix it again.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20190401090827.20793-2-armbru@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
This commit is contained in:
Markus Armbruster 2019-04-01 11:08:23 +02:00
parent 5cc8f9eb7a
commit 2fa23277d5

15
vl.c
View File

@ -4277,17 +4277,10 @@ 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, and after migration_object_init(), so we can create
* migration blockers.
* them.
*/
configure_blockdev(&bdo_queue, machine_class, snapshot);
@ -4305,6 +4298,12 @@ 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);
}