From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yang Hongyang Subject: [RFC PATCH 08/17] COLO: disable qdev hotplug Date: Wed, 23 Jul 2014 22:25:29 +0800 Message-ID: <1406125538-27992-9-git-send-email-yanghy@cn.fujitsu.com> References: <1406125538-27992-1-git-send-email-yanghy@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain Cc: , , , , , , Yang Hongyang To: Return-path: Received: from cn.fujitsu.com ([59.151.112.132]:57511 "EHLO heian.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S932189AbaGWOZ4 (ORCPT ); Wed, 23 Jul 2014 10:25:56 -0400 In-Reply-To: <1406125538-27992-1-git-send-email-yanghy@cn.fujitsu.com> Sender: kvm-owner@vger.kernel.org List-ID: COLO do not support qdev hotplug migration, disable it. Signed-off-by: Yang Hongyang --- migration-colo.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/migration-colo.c b/migration-colo.c index b90d9b6..f295e56 100644 --- a/migration-colo.c +++ b/migration-colo.c @@ -12,6 +12,7 @@ #include "qemu/thread.h" #include "block/coroutine.h" #include "qemu/error-report.h" +#include "hw/qdev-core.h" #include "migration/migration-colo.h" static QEMUBH *colo_bh; @@ -130,6 +131,9 @@ static const QEMUFileOps colo_read_ops = { static void *colo_thread(void *opaque) { MigrationState *s = opaque; + int dev_hotplug = qdev_hotplug; + + qdev_hotplug = 0; colo_buffer_init(); @@ -145,6 +149,8 @@ static void *colo_thread(void *opaque) qemu_bh_schedule(s->cleanup_bh); qemu_mutex_unlock_iothread(); + qdev_hotplug = dev_hotplug; + return NULL; } @@ -179,10 +185,14 @@ static Coroutine *colo; void colo_process_incoming_checkpoints(QEMUFile *f) { + int dev_hotplug = qdev_hotplug; + if (!restore_use_colo()) { return; } + qdev_hotplug = 0; + colo = qemu_coroutine_self(); assert(colo != NULL); @@ -194,5 +204,7 @@ void colo_process_incoming_checkpoints(QEMUFile *f) colo = NULL; restore_exit_colo(); + qdev_hotplug = dev_hotplug; + return; } -- 1.9.1