From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352675642534.3184309098659; Thu, 1 Jun 2017 14:31:15 -0700 (PDT) Received: from localhost ([::1]:46694 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXgY-0000iT-5L for importer@patchew.org; Thu, 01 Jun 2017 17:31:14 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60204) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXew-00085x-Rc for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXev-0007rV-Rm for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:34 -0400 Received: from mx1.redhat.com ([209.132.183.28]:35812) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXev-0007rF-JD for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:33 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7866C80C01 for ; Thu, 1 Jun 2017 21:29:32 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id DC42D183A6; Thu, 1 Jun 2017 21:29:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 7866C80C01 Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 7866C80C01 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:11 +0200 Message-Id: <20170601212921.30241-2-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Thu, 01 Jun 2017 21:29:32 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 01/11] migration: Remove MigrationState from migration_channel_incomming() X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" All callers were calling migrate_get_current(), so do it inside the functio= n. Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- migration/channel.c | 5 +++-- migration/channel.h | 3 +-- migration/exec.c | 2 +- migration/fd.c | 2 +- migration/socket.c | 3 +-- migration/tls.c | 2 +- 6 files changed, 8 insertions(+), 9 deletions(-) diff --git a/migration/channel.c b/migration/channel.c index eae1d9e..92f6f99 100644 --- a/migration/channel.c +++ b/migration/channel.c @@ -19,9 +19,10 @@ #include "qapi/error.h" #include "io/channel-tls.h" =20 -void migration_channel_process_incoming(MigrationState *s, - QIOChannel *ioc) +void migration_channel_process_incoming(QIOChannel *ioc) { + MigrationState *s =3D migrate_get_current(); + trace_migration_set_incoming_channel( ioc, object_get_typename(OBJECT(ioc))); =20 diff --git a/migration/channel.h b/migration/channel.h index 2e0a7e3..e4b4057 100644 --- a/migration/channel.h +++ b/migration/channel.h @@ -18,8 +18,7 @@ =20 #include "io/channel.h" =20 -void migration_channel_process_incoming(MigrationState *s, - QIOChannel *ioc); +void migration_channel_process_incoming(QIOChannel *ioc); =20 void migration_channel_connect(MigrationState *s, QIOChannel *ioc, diff --git a/migration/exec.c b/migration/exec.c index 9077024..fc78eeb 100644 --- a/migration/exec.c +++ b/migration/exec.c @@ -49,7 +49,7 @@ static gboolean exec_accept_incoming_migration(QIOChannel= *ioc, GIOCondition condition, gpointer opaque) { - migration_channel_process_incoming(migrate_get_current(), ioc); + migration_channel_process_incoming(ioc); object_unref(OBJECT(ioc)); return FALSE; /* unregister */ } diff --git a/migration/fd.c b/migration/fd.c index 0077a50..8a04dcd 100644 --- a/migration/fd.c +++ b/migration/fd.c @@ -49,7 +49,7 @@ static gboolean fd_accept_incoming_migration(QIOChannel *= ioc, GIOCondition condition, gpointer opaque) { - migration_channel_process_incoming(migrate_get_current(), ioc); + migration_channel_process_incoming(ioc); object_unref(OBJECT(ioc)); return FALSE; /* unregister */ } diff --git a/migration/socket.c b/migration/socket.c index 85bfdcc..50dc8d8 100644 --- a/migration/socket.c +++ b/migration/socket.c @@ -148,8 +148,7 @@ static gboolean socket_accept_incoming_migration(QIOCha= nnel *ioc, trace_migration_socket_incoming_accepted(); =20 qio_channel_set_name(QIO_CHANNEL(sioc), "migration-socket-incoming"); - migration_channel_process_incoming(migrate_get_current(), - QIO_CHANNEL(sioc)); + migration_channel_process_incoming(QIO_CHANNEL(sioc)); object_unref(OBJECT(sioc)); =20 out: diff --git a/migration/tls.c b/migration/tls.c index bae9aca..d3abd6e 100644 --- a/migration/tls.c +++ b/migration/tls.c @@ -74,7 +74,7 @@ static void migration_tls_incoming_handshake(QIOTask *tas= k, error_report_err(err); } else { trace_migration_tls_incoming_handshake_complete(); - migration_channel_process_incoming(migrate_get_current(), ioc); + migration_channel_process_incoming(ioc); } object_unref(OBJECT(ioc)); } --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352834903850.8020170313099; Thu, 1 Jun 2017 14:33:54 -0700 (PDT) Received: from localhost ([::1]:46703 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXj7-0003Dh-8i for importer@patchew.org; Thu, 01 Jun 2017 17:33:53 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60301) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXf8-0008E1-Da for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXf5-0007wK-9v for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47174) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXf5-0007vu-0q for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:43 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 067A361E4A for ; Thu, 1 Jun 2017 21:29:42 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id C44A051DE3; Thu, 1 Jun 2017 21:29:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 067A361E4A Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 067A361E4A From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:12 +0200 Message-Id: <20170601212921.30241-3-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Thu, 01 Jun 2017 21:29:42 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 02/11] migration: Move self_announce_delay() to misc.h X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/net/virtio-net.c | 1 + include/migration/misc.h | 10 ++++++++++ include/migration/vmstate.h | 10 ---------- migration/savevm.c | 1 + 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 9a3d769..91eddaf 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -25,6 +25,7 @@ #include "qapi/qmp/qjson.h" #include "qapi-event.h" #include "hw/virtio/virtio-access.h" +#include "migration/misc.h" =20 #define VIRTIO_NET_VM_VERSION 11 =20 diff --git a/include/migration/misc.h b/include/migration/misc.h index d7892b7..60486d4 100644 --- a/include/migration/misc.h +++ b/include/migration/misc.h @@ -26,4 +26,14 @@ void blk_mig_init(void); static inline void blk_mig_init(void) {} #endif =20 +#define SELF_ANNOUNCE_ROUNDS 5 + +static inline +int64_t self_announce_delay(int round) +{ + assert(round < SELF_ANNOUNCE_ROUNDS && round > 0); + /* delay 50ms, 150ms, 250ms, ... */ + return 50 + (SELF_ANNOUNCE_ROUNDS - round - 1) * 100; +} + #endif diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h index 6689562..b95c9bb 100644 --- a/include/migration/vmstate.h +++ b/include/migration/vmstate.h @@ -1018,8 +1018,6 @@ extern const VMStateInfo vmstate_info_qtailq; #define VMSTATE_END_OF_LIST() \ {} =20 -#define SELF_ANNOUNCE_ROUNDS 5 - int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd, void *opaque, int version_id); void vmstate_save_state(QEMUFile *f, const VMStateDescription *vmsd, @@ -1051,14 +1049,6 @@ void vmstate_register_ram(struct MemoryRegion *memor= y, DeviceState *dev); void vmstate_unregister_ram(struct MemoryRegion *memory, DeviceState *dev); void vmstate_register_ram_global(struct MemoryRegion *memory); =20 -static inline -int64_t self_announce_delay(int round) -{ - assert(round < SELF_ANNOUNCE_ROUNDS && round > 0); - /* delay 50ms, 150ms, 250ms, ... */ - return 50 + (SELF_ANNOUNCE_ROUNDS - round - 1) * 100; -} - void dump_vmstate_json_to_file(FILE *out_fp); =20 bool vmstate_check_only_migratable(const VMStateDescription *vmsd); diff --git a/migration/savevm.c b/migration/savevm.c index 9c320f5..d683877 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -36,6 +36,7 @@ #include "qemu/timer.h" #include "migration/migration.h" #include "migration/snapshot.h" +#include "migration/misc.h" #include "ram.h" #include "qemu-file-channel.h" #include "qemu-file.h" --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352987148754.846994084482; Thu, 1 Jun 2017 14:36:27 -0700 (PDT) Received: from localhost ([::1]:46718 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXlZ-0005IR-H3 for importer@patchew.org; Thu, 01 Jun 2017 17:36:25 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60339) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfE-0008Hk-0e for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfC-0007zT-Gt for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:52 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46292) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfC-0007y2-7S for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:50 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 34CC8334582 for ; Thu, 1 Jun 2017 21:29:49 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 54C0E51DE3; Thu, 1 Jun 2017 21:29:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 34CC8334582 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 34CC8334582 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:13 +0200 Message-Id: <20170601212921.30241-4-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Thu, 01 Jun 2017 21:29:49 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 03/11] migration: Split registration functions from vmstate.h X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" They are indpendent, and nowadays almost every device register things with qdev->vmsd. Signed-off-by: Juan Quintela Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/net/vmxnet3.c | 1 + hw/ppc/spapr.c | 1 + hw/s390x/s390-skeys.c | 1 + hw/s390x/s390-virtio-ccw.c | 1 + include/migration/register.h | 64 ++++++++++++++++++++++++++++++++++++++++= ++++ include/migration/vmstate.h | 45 ------------------------------- migration/block.c | 1 + migration/ram.c | 1 + migration/savevm.c | 1 + slirp/slirp.c | 1 + 10 files changed, 72 insertions(+), 45 deletions(-) create mode 100644 include/migration/register.h diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c index 8b1fab2..21ac646 100644 --- a/hw/net/vmxnet3.c +++ b/hw/net/vmxnet3.c @@ -26,6 +26,7 @@ #include "qemu/bswap.h" #include "hw/pci/msix.h" #include "hw/pci/msi.h" +#include "migration/register.h" =20 #include "vmxnet3.h" #include "vmxnet_debug.h" diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index ab3aab1..a44efbf 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -39,6 +39,7 @@ #include "sysemu/hw_accel.h" #include "kvm_ppc.h" #include "migration/migration.h" +#include "migration/register.h" #include "mmu-hash64.h" #include "mmu-book3s-v3.h" #include "qom/cpu.h" diff --git a/hw/s390x/s390-skeys.c b/hw/s390x/s390-skeys.c index 619152c..58f084a 100644 --- a/hw/s390x/s390-skeys.c +++ b/hw/s390x/s390-skeys.c @@ -15,6 +15,7 @@ #include "hw/s390x/storage-keys.h" #include "qemu/error-report.h" #include "sysemu/kvm.h" +#include "migration/register.h" =20 #define S390_SKEYS_BUFFER_SIZE 131072 /* Room for 128k storage keys */ #define S390_SKEYS_SAVE_FLAG_EOS 0x01 diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index c9021f2..51d14d3 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -28,6 +28,7 @@ #include "ipl.h" #include "hw/s390x/s390-virtio-ccw.h" #include "hw/s390x/css-bridge.h" +#include "migration/register.h" =20 static const char *const reset_dev_types[] =3D { TYPE_VIRTUAL_CSS_BRIDGE, diff --git a/include/migration/register.h b/include/migration/register.h new file mode 100644 index 0000000..844afaf --- /dev/null +++ b/include/migration/register.h @@ -0,0 +1,64 @@ +/* + * QEMU migration vmstate registration + * + * Copyright IBM, Corp. 2008 + * + * Authors: + * Anthony Liguori + * + * This work is licensed under the terms of the GNU GPL, version 2. See + * the COPYING file in the top-level directory. + * + */ + +#ifndef MIGRATION_REGISTER_H +#define MIGRATION_REGISTER_H + +typedef void SaveStateHandler(QEMUFile *f, void *opaque); +typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id); + +typedef struct SaveVMHandlers { + /* This runs inside the iothread lock. */ + SaveStateHandler *save_state; + + void (*cleanup)(void *opaque); + int (*save_live_complete_postcopy)(QEMUFile *f, void *opaque); + int (*save_live_complete_precopy)(QEMUFile *f, void *opaque); + + /* This runs both outside and inside the iothread lock. */ + bool (*is_active)(void *opaque); + + /* This runs outside the iothread lock in the migration case, and + * within the lock in the savevm case. The callback had better only + * use data that is local to the migration thread or protected + * by other locks. + */ + int (*save_live_iterate)(QEMUFile *f, void *opaque); + + /* This runs outside the iothread lock! */ + int (*save_live_setup)(QEMUFile *f, void *opaque); + void (*save_live_pending)(QEMUFile *f, void *opaque, + uint64_t threshold_size, + uint64_t *non_postcopiable_pending, + uint64_t *postcopiable_pending); + LoadStateHandler *load_state; +} SaveVMHandlers; + +int register_savevm(DeviceState *dev, + const char *idstr, + int instance_id, + int version_id, + SaveStateHandler *save_state, + LoadStateHandler *load_state, + void *opaque); + +int register_savevm_live(DeviceState *dev, + const char *idstr, + int instance_id, + int version_id, + SaveVMHandlers *ops, + void *opaque); + +void unregister_savevm(DeviceState *dev, const char *idstr, void *opaque); + +#endif diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h index b95c9bb..6de554d 100644 --- a/include/migration/vmstate.h +++ b/include/migration/vmstate.h @@ -29,53 +29,8 @@ =20 #include "migration/qjson.h" =20 -typedef void SaveStateHandler(QEMUFile *f, void *opaque); typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id); =20 -typedef struct SaveVMHandlers { - /* This runs inside the iothread lock. */ - SaveStateHandler *save_state; - - void (*cleanup)(void *opaque); - int (*save_live_complete_postcopy)(QEMUFile *f, void *opaque); - int (*save_live_complete_precopy)(QEMUFile *f, void *opaque); - - /* This runs both outside and inside the iothread lock. */ - bool (*is_active)(void *opaque); - - /* This runs outside the iothread lock in the migration case, and - * within the lock in the savevm case. The callback had better only - * use data that is local to the migration thread or protected - * by other locks. - */ - int (*save_live_iterate)(QEMUFile *f, void *opaque); - - /* This runs outside the iothread lock! */ - int (*save_live_setup)(QEMUFile *f, void *opaque); - void (*save_live_pending)(QEMUFile *f, void *opaque, - uint64_t threshold_size, - uint64_t *non_postcopiable_pending, - uint64_t *postcopiable_pending); - LoadStateHandler *load_state; -} SaveVMHandlers; - -int register_savevm(DeviceState *dev, - const char *idstr, - int instance_id, - int version_id, - SaveStateHandler *save_state, - LoadStateHandler *load_state, - void *opaque); - -int register_savevm_live(DeviceState *dev, - const char *idstr, - int instance_id, - int version_id, - SaveVMHandlers *ops, - void *opaque); - -void unregister_savevm(DeviceState *dev, const char *idstr, void *opaque); - typedef struct VMStateInfo VMStateInfo; typedef struct VMStateDescription VMStateDescription; typedef struct VMStateField VMStateField; diff --git a/migration/block.c b/migration/block.c index 4d8c2e9..30ab531 100644 --- a/migration/block.c +++ b/migration/block.c @@ -26,6 +26,7 @@ #include "block.h" #include "migration/misc.h" #include "migration/migration.h" +#include "migration/register.h" #include "sysemu/blockdev.h" #include "qemu-file.h" #include "migration/vmstate.h" diff --git a/migration/ram.c b/migration/ram.c index f387e9c..31b4d6a 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -38,6 +38,7 @@ #include "xbzrle.h" #include "ram.h" #include "migration/migration.h" +#include "migration/register.h" #include "migration/misc.h" #include "qemu-file.h" #include "migration/vmstate.h" diff --git a/migration/savevm.c b/migration/savevm.c index d683877..543635b 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -37,6 +37,7 @@ #include "migration/migration.h" #include "migration/snapshot.h" #include "migration/misc.h" +#include "migration/register.h" #include "ram.h" #include "qemu-file-channel.h" #include "qemu-file.h" diff --git a/slirp/slirp.c b/slirp/slirp.c index 2f2ec2c..e988523 100644 --- a/slirp/slirp.c +++ b/slirp/slirp.c @@ -25,6 +25,7 @@ #include "qemu-common.h" #include "qemu/timer.h" #include "qemu/error-report.h" +#include "migration/register.h" #include "sysemu/char.h" #include "slirp.h" #include "hw/hw.h" --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352707488295.2051647678687; Thu, 1 Jun 2017 14:31:47 -0700 (PDT) Received: from localhost ([::1]:46695 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXh4-00014k-2W for importer@patchew.org; Thu, 01 Jun 2017 17:31:46 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60378) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfH-0008Jy-8A for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfE-00081e-J1 for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:55 -0400 Received: from mx1.redhat.com ([209.132.183.28]:9169) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfE-000812-DD for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:52 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 618CD142A74 for ; Thu, 1 Jun 2017 21:29:51 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8563D60E38; Thu, 1 Jun 2017 21:29:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 618CD142A74 Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 618CD142A74 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:14 +0200 Message-Id: <20170601212921.30241-5-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Thu, 01 Jun 2017 21:29:51 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 04/11] migration: Move dump_vmsate_json_to_file() to misc.h X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" It was not from vmstate.c to start with. Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/migration/misc.h | 4 ++++ include/migration/vmstate.h | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/migration/misc.h b/include/migration/misc.h index 60486d4..026b561 100644 --- a/include/migration/misc.h +++ b/include/migration/misc.h @@ -36,4 +36,8 @@ int64_t self_announce_delay(int round) return 50 + (SELF_ANNOUNCE_ROUNDS - round - 1) * 100; } =20 +/* migration/savevm.c */ + +void dump_vmstate_json_to_file(FILE *out_fp); + #endif diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h index 6de554d..ad243d4 100644 --- a/include/migration/vmstate.h +++ b/include/migration/vmstate.h @@ -1004,8 +1004,6 @@ void vmstate_register_ram(struct MemoryRegion *memory= , DeviceState *dev); void vmstate_unregister_ram(struct MemoryRegion *memory, DeviceState *dev); void vmstate_register_ram_global(struct MemoryRegion *memory); =20 -void dump_vmstate_json_to_file(FILE *out_fp); - bool vmstate_check_only_migratable(const VMStateDescription *vmsd); =20 #endif --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352865544306.7239645403432; Thu, 1 Jun 2017 14:34:25 -0700 (PDT) Received: from localhost ([::1]:46705 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXjb-0003e7-O1 for importer@patchew.org; Thu, 01 Jun 2017 17:34:23 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60382) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfH-0008KG-Hi for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfG-00082q-GN for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:55 -0400 Received: from mx1.redhat.com ([209.132.183.28]:51948) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfG-000824-83 for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:54 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3E943C049D5C for ; Thu, 1 Jun 2017 21:29:53 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id B428D60E38; Thu, 1 Jun 2017 21:29:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 3E943C049D5C Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 3E943C049D5C From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:15 +0200 Message-Id: <20170601212921.30241-6-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Thu, 01 Jun 2017 21:29:53 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 05/11] migration: Move constants to savevm.h X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/migration/migration.h | 15 --------------- migration/savevm.h | 15 +++++++++++++++ migration/vmstate.c | 1 + tests/test-vmstate.c | 1 + 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/include/migration/migration.h b/include/migration/migration.h index 79b5484..dd52d3c 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -22,21 +22,6 @@ #include "exec/cpu-common.h" #include "qemu/coroutine_int.h" =20 -#define QEMU_VM_FILE_MAGIC 0x5145564d -#define QEMU_VM_FILE_VERSION_COMPAT 0x00000002 -#define QEMU_VM_FILE_VERSION 0x00000003 - -#define QEMU_VM_EOF 0x00 -#define QEMU_VM_SECTION_START 0x01 -#define QEMU_VM_SECTION_PART 0x02 -#define QEMU_VM_SECTION_END 0x03 -#define QEMU_VM_SECTION_FULL 0x04 -#define QEMU_VM_SUBSECTION 0x05 -#define QEMU_VM_VMDESCRIPTION 0x06 -#define QEMU_VM_CONFIGURATION 0x07 -#define QEMU_VM_COMMAND 0x08 -#define QEMU_VM_SECTION_FOOTER 0x7e - /* Messages sent on the return path from destination to source */ enum mig_rp_message_type { MIG_RP_MSG_INVALID =3D 0, /* Must be 0 */ diff --git a/migration/savevm.h b/migration/savevm.h index eb44877..45b59c1 100644 --- a/migration/savevm.h +++ b/migration/savevm.h @@ -14,6 +14,21 @@ #ifndef MIGRATION_SAVEVM_H #define MIGRATION_SAVEVM_H =20 +#define QEMU_VM_FILE_MAGIC 0x5145564d +#define QEMU_VM_FILE_VERSION_COMPAT 0x00000002 +#define QEMU_VM_FILE_VERSION 0x00000003 + +#define QEMU_VM_EOF 0x00 +#define QEMU_VM_SECTION_START 0x01 +#define QEMU_VM_SECTION_PART 0x02 +#define QEMU_VM_SECTION_END 0x03 +#define QEMU_VM_SECTION_FULL 0x04 +#define QEMU_VM_SUBSECTION 0x05 +#define QEMU_VM_VMDESCRIPTION 0x06 +#define QEMU_VM_CONFIGURATION 0x07 +#define QEMU_VM_COMMAND 0x08 +#define QEMU_VM_SECTION_FOOTER 0x7e + bool qemu_savevm_state_blocked(Error **errp); void qemu_savevm_state_begin(QEMUFile *f); void qemu_savevm_state_header(QEMUFile *f); diff --git a/migration/vmstate.c b/migration/vmstate.c index 51a19b6..377d951 100644 --- a/migration/vmstate.c +++ b/migration/vmstate.c @@ -14,6 +14,7 @@ #include "qemu-common.h" #include "migration/migration.h" #include "migration/vmstate.h" +#include "migration/savevm.h" #include "qemu-file.h" #include "qemu/bitops.h" #include "qemu/error-report.h" diff --git a/tests/test-vmstate.c b/tests/test-vmstate.c index c52aff9..f30433a 100644 --- a/tests/test-vmstate.c +++ b/tests/test-vmstate.c @@ -30,6 +30,7 @@ #include "migration/qemu-file-types.h" #include "../migration/qemu-file.h" #include "../migration/qemu-file-channel.h" +#include "../migration/savevm.h" #include "qemu/coroutine.h" #include "io/channel-file.h" =20 --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352843476431.85151720273984; Thu, 1 Jun 2017 14:34:03 -0700 (PDT) Received: from localhost ([::1]:46704 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXjG-0003If-33 for importer@patchew.org; Thu, 01 Jun 2017 17:34:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60406) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfJ-0008Ly-II for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfI-00083q-9v for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34856) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfI-00083S-0D for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:56 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 04D237AE81 for ; Thu, 1 Jun 2017 21:29:55 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8FDD551DE3; Thu, 1 Jun 2017 21:29:53 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 04D237AE81 Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 04D237AE81 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:16 +0200 Message-Id: <20170601212921.30241-7-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Thu, 01 Jun 2017 21:29:55 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 06/11] migration: Commands are only used inside migration.c X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" So, move them there. Notice that we export functions that send commands, not the command themselves. Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/migration/migration.h | 15 -------------- migration/migration.c | 46 +++++++++++++++++++++++++++------------= ---- 2 files changed, 29 insertions(+), 32 deletions(-) diff --git a/include/migration/migration.h b/include/migration/migration.h index dd52d3c..108212c 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -22,18 +22,6 @@ #include "exec/cpu-common.h" #include "qemu/coroutine_int.h" =20 -/* Messages sent on the return path from destination to source */ -enum mig_rp_message_type { - MIG_RP_MSG_INVALID =3D 0, /* Must be 0 */ - MIG_RP_MSG_SHUT, /* sibling will not send any more RP messages= */ - MIG_RP_MSG_PONG, /* Response to a PING; data (seq: be32 ) */ - - MIG_RP_MSG_REQ_PAGES_ID, /* data (start: be64, len: be32, id: string) = */ - MIG_RP_MSG_REQ_PAGES, /* data (start: be64, len: be32) */ - - MIG_RP_MSG_MAX -}; - /* State for the incoming migration */ struct MigrationIncomingState { QEMUFile *from_src_file; @@ -176,9 +164,6 @@ int migrate_decompress_threads(void); bool migrate_use_events(void); =20 /* Sending on the return path - generic and then for each message type */ -void migrate_send_rp_message(MigrationIncomingState *mis, - enum mig_rp_message_type message_type, - uint16_t len, void *data); void migrate_send_rp_shut(MigrationIncomingState *mis, uint32_t value); void migrate_send_rp_pong(MigrationIncomingState *mis, diff --git a/migration/migration.c b/migration/migration.c index 48c94c9..603d39d 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -86,6 +86,18 @@ static NotifierList migration_state_notifiers =3D =20 static bool deferred_incoming; =20 +/* Messages sent on the return path from destination to source */ +enum mig_rp_message_type { + MIG_RP_MSG_INVALID =3D 0, /* Must be 0 */ + MIG_RP_MSG_SHUT, /* sibling will not send any more RP messages= */ + MIG_RP_MSG_PONG, /* Response to a PING; data (seq: be32 ) */ + + MIG_RP_MSG_REQ_PAGES_ID, /* data (start: be64, len: be32, id: string) = */ + MIG_RP_MSG_REQ_PAGES, /* data (start: be64, len: be32) */ + + MIG_RP_MSG_MAX +}; + /* When we add fault tolerance, we could have several migrations at once. For now we don't need to add dynamic creation of migration */ @@ -292,6 +304,23 @@ static void deferred_incoming_migration(Error **errp) deferred_incoming =3D true; } =20 +/* + * Send a message on the return channel back to the source + * of the migration. + */ +static void migrate_send_rp_message(MigrationIncomingState *mis, + enum mig_rp_message_type message_type, + uint16_t len, void *data) +{ + trace_migrate_send_rp_message((int)message_type, len); + qemu_mutex_lock(&mis->rp_mutex); + qemu_put_be16(mis->to_src_file, (unsigned int)message_type); + qemu_put_be16(mis->to_src_file, len); + qemu_put_buffer(mis->to_src_file, data, len); + qemu_fflush(mis->to_src_file); + qemu_mutex_unlock(&mis->rp_mutex); +} + /* Request a range of pages from the source VM at the given * start address. * rbname: Name of the RAMBlock to request the page in, if NULL it's the= same @@ -462,23 +491,6 @@ void migration_fd_process_incoming(QEMUFile *f) } =20 /* - * Send a message on the return channel back to the source - * of the migration. - */ -void migrate_send_rp_message(MigrationIncomingState *mis, - enum mig_rp_message_type message_type, - uint16_t len, void *data) -{ - trace_migrate_send_rp_message((int)message_type, len); - qemu_mutex_lock(&mis->rp_mutex); - qemu_put_be16(mis->to_src_file, (unsigned int)message_type); - qemu_put_be16(mis->to_src_file, len); - qemu_put_buffer(mis->to_src_file, data, len); - qemu_fflush(mis->to_src_file); - qemu_mutex_unlock(&mis->rp_mutex); -} - -/* * Send a 'SHUT' message on the return channel with the given value * to indicate that we've finished with the RP. Non-0 value indicates * error. --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352991445671.7976258440735; Thu, 1 Jun 2017 14:36:31 -0700 (PDT) Received: from localhost ([::1]:46719 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXle-0005Ls-0q for importer@patchew.org; Thu, 01 Jun 2017 17:36:30 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60421) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfL-0008NY-1q for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfK-00084d-2g for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:59 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34902) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfJ-00084H-Sq for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:29:57 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D51B47AE85 for ; Thu, 1 Jun 2017 21:29:56 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 55AF560E38; Thu, 1 Jun 2017 21:29:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com D51B47AE85 Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com D51B47AE85 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:17 +0200 Message-Id: <20170601212921.30241-8-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Thu, 01 Jun 2017 21:29:57 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 07/11] migration: ram_control_* are implemented in qemu_file X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/migration/migration.h | 18 ------------------ migration/qemu-file.h | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/include/migration/migration.h b/include/migration/migration.h index 108212c..cb894b8 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -171,24 +171,6 @@ void migrate_send_rp_pong(MigrationIncomingState *mis, void migrate_send_rp_req_pages(MigrationIncomingState *mis, const char* rb= name, ram_addr_t start, size_t len); =20 -void ram_control_before_iterate(QEMUFile *f, uint64_t flags); -void ram_control_after_iterate(QEMUFile *f, uint64_t flags); -void ram_control_load_hook(QEMUFile *f, uint64_t flags, void *data); - -/* Whenever this is found in the data stream, the flags - * will be passed to ram_control_load_hook in the incoming-migration - * side. This lets before_ram_iterate/after_ram_iterate add - * transport-specific sections to the RAM migration data. - */ -#define RAM_SAVE_FLAG_HOOK 0x80 - -#define RAM_SAVE_CONTROL_NOT_SUPP -1000 -#define RAM_SAVE_CONTROL_DELAYED -2000 - -size_t ram_control_save_page(QEMUFile *f, ram_addr_t block_offset, - ram_addr_t offset, size_t size, - uint64_t *bytes_sent); - void savevm_skip_section_footers(void); void register_global_state(void); void global_state_set_optional(void); diff --git a/migration/qemu-file.h b/migration/qemu-file.h index 49fd697..aae4e5e 100644 --- a/migration/qemu-file.h +++ b/migration/qemu-file.h @@ -156,5 +156,22 @@ void qemu_file_set_blocking(QEMUFile *f, bool block); =20 size_t qemu_get_counted_string(QEMUFile *f, char buf[256]); =20 +void ram_control_before_iterate(QEMUFile *f, uint64_t flags); +void ram_control_after_iterate(QEMUFile *f, uint64_t flags); +void ram_control_load_hook(QEMUFile *f, uint64_t flags, void *data); + +/* Whenever this is found in the data stream, the flags + * will be passed to ram_control_load_hook in the incoming-migration + * side. This lets before_ram_iterate/after_ram_iterate add + * transport-specific sections to the RAM migration data. + */ +#define RAM_SAVE_FLAG_HOOK 0x80 + +#define RAM_SAVE_CONTROL_NOT_SUPP -1000 +#define RAM_SAVE_CONTROL_DELAYED -2000 + +size_t ram_control_save_page(QEMUFile *f, ram_addr_t block_offset, + ram_addr_t offset, size_t size, + uint64_t *bytes_sent); =20 #endif --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352719953908.1749721004832; Thu, 1 Jun 2017 14:31:59 -0700 (PDT) Received: from localhost ([::1]:46696 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXhG-0001Fg-9v for importer@patchew.org; Thu, 01 Jun 2017 17:31:58 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60454) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfN-0008QY-TM for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfM-00086W-5D for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:01 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52168) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfL-000857-SK for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:00 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id D9B16C0467CF for ; Thu, 1 Jun 2017 21:29:58 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 31B1651DE3; Thu, 1 Jun 2017 21:29:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com D9B16C0467CF Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com D9B16C0467CF From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:18 +0200 Message-Id: <20170601212921.30241-9-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Thu, 01 Jun 2017 21:29:59 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 08/11] migration: create global_state.c X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" It don't belong anywhere else, just the global state where everybody can stick other things. Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/i386/pc_piix.c | 1 + hw/ppc/spapr.c | 1 + hw/xen/xen-common.c | 1 + include/migration/global_state.h | 25 +++++++ include/migration/migration.h | 4 -- migration/Makefile.objs | 2 +- migration/global_state.c | 140 +++++++++++++++++++++++++++++++++++= ++++ migration/migration.c | 121 +-------------------------------- migration/savevm.c | 1 + vl.c | 1 + 10 files changed, 172 insertions(+), 125 deletions(-) create mode 100644 include/migration/global_state.h create mode 100644 migration/global_state.c diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index 2234bd0..dc19d96 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -52,6 +52,7 @@ #include #include "hw/xen/xen_pt.h" #endif +#include "migration/global_state.h" #include "migration/migration.h" #include "kvm_i386.h" #include "sysemu/numa.h" diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index a44efbf..ac8a317 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -39,6 +39,7 @@ #include "sysemu/hw_accel.h" #include "kvm_ppc.h" #include "migration/migration.h" +#include "migration/global_state.h" #include "migration/register.h" #include "mmu-hash64.h" #include "mmu-book3s-v3.h" diff --git a/hw/xen/xen-common.c b/hw/xen/xen-common.c index a9055e9..e265445 100644 --- a/hw/xen/xen-common.c +++ b/hw/xen/xen-common.c @@ -14,6 +14,7 @@ #include "sysemu/char.h" #include "sysemu/accel.h" #include "migration/migration.h" +#include "migration/global_state.h" =20 //#define DEBUG_XEN =20 diff --git a/include/migration/global_state.h b/include/migration/global_st= ate.h new file mode 100644 index 0000000..90faea7 --- /dev/null +++ b/include/migration/global_state.h @@ -0,0 +1,25 @@ +/* + * Global State configuration + * + * Copyright (c) 2014-2017 Red Hat Inc + * + * Authors: + * Juan Quintela + * + * This work is licensed under the terms of the GNU GPL, version 2 or late= r. + * See the COPYING file in the top-level directory. + */ + +#ifndef QEMU_MIGRATION_GLOBAL_STATE_H +#define QEMU_MIGRATION_GLOBAL_STATE_H + +#include "sysemu/sysemu.h" + +void register_global_state(void); +void global_state_set_optional(void); +int global_state_store(void); +void global_state_store_running(void); +bool global_state_received(void); +RunState global_state_get_runstate(void); + +#endif diff --git a/include/migration/migration.h b/include/migration/migration.h index cb894b8..5050454 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -172,10 +172,6 @@ void migrate_send_rp_req_pages(MigrationIncomingState = *mis, const char* rbname, ram_addr_t start, size_t len); =20 void savevm_skip_section_footers(void); -void register_global_state(void); -void global_state_set_optional(void); void savevm_skip_configuration(void); -int global_state_store(void); -void global_state_store_running(void); =20 #endif diff --git a/migration/Makefile.objs b/migration/Makefile.objs index 90f8c1f..1c7770d 100644 --- a/migration/Makefile.objs +++ b/migration/Makefile.objs @@ -2,7 +2,7 @@ common-obj-y +=3D migration.o socket.o fd.o exec.o common-obj-y +=3D tls.o channel.o savevm.o common-obj-y +=3D colo-comm.o colo.o colo-failover.o common-obj-y +=3D vmstate.o vmstate-types.o page_cache.o -common-obj-y +=3D qemu-file.o +common-obj-y +=3D qemu-file.o global_state.o common-obj-y +=3D qemu-file-channel.o common-obj-y +=3D xbzrle.o postcopy-ram.o common-obj-y +=3D qjson.o diff --git a/migration/global_state.c b/migration/global_state.c new file mode 100644 index 0000000..16ac63f --- /dev/null +++ b/migration/global_state.c @@ -0,0 +1,140 @@ +/* + * Global State configuration + * + * Copyright (c) 2014-2017 Red Hat Inc + * + * Authors: + * Juan Quintela + * + * This work is licensed under the terms of the GNU GPL, version 2 or late= r. + * See the COPYING file in the top-level directory. + */ + +#include "qemu/osdep.h" +#include "qemu/cutils.h" +#include "qemu/error-report.h" +#include "qapi/error.h" +#include "qapi/util.h" +#include "migration/global_state.h" +#include "migration/vmstate.h" +#include "sysemu/sysemu.h" +#include "trace.h" + +typedef struct { + bool optional; + uint32_t size; + uint8_t runstate[100]; + RunState state; + bool received; +} GlobalState; + +static GlobalState global_state; + +int global_state_store(void) +{ + if (!runstate_store((char *)global_state.runstate, + sizeof(global_state.runstate))) { + error_report("runstate name too big: %s", global_state.runstate); + trace_migrate_state_too_big(); + return -EINVAL; + } + return 0; +} + +void global_state_store_running(void) +{ + const char *state =3D RunState_lookup[RUN_STATE_RUNNING]; + strncpy((char *)global_state.runstate, + state, sizeof(global_state.runstate)); +} + +bool global_state_received(void) +{ + return global_state.received; +} + +RunState global_state_get_runstate(void) +{ + return global_state.state; +} + +void global_state_set_optional(void) +{ + global_state.optional =3D true; +} + +static bool global_state_needed(void *opaque) +{ + GlobalState *s =3D opaque; + char *runstate =3D (char *)s->runstate; + + /* If it is not optional, it is mandatory */ + + if (s->optional =3D=3D false) { + return true; + } + + /* If state is running or paused, it is not needed */ + + if (strcmp(runstate, "running") =3D=3D 0 || + strcmp(runstate, "paused") =3D=3D 0) { + return false; + } + + /* for any other state it is needed */ + return true; +} + +static int global_state_post_load(void *opaque, int version_id) +{ + GlobalState *s =3D opaque; + Error *local_err =3D NULL; + int r; + char *runstate =3D (char *)s->runstate; + + s->received =3D true; + trace_migrate_global_state_post_load(runstate); + + r =3D qapi_enum_parse(RunState_lookup, runstate, RUN_STATE__MAX, + -1, &local_err); + + if (r =3D=3D -1) { + if (local_err) { + error_report_err(local_err); + } + return -EINVAL; + } + s->state =3D r; + + return 0; +} + +static void global_state_pre_save(void *opaque) +{ + GlobalState *s =3D opaque; + + trace_migrate_global_state_pre_save((char *)s->runstate); + s->size =3D strlen((char *)s->runstate) + 1; +} + +static const VMStateDescription vmstate_globalstate =3D { + .name =3D "globalstate", + .version_id =3D 1, + .minimum_version_id =3D 1, + .post_load =3D global_state_post_load, + .pre_save =3D global_state_pre_save, + .needed =3D global_state_needed, + .fields =3D (VMStateField[]) { + VMSTATE_UINT32(size, GlobalState), + VMSTATE_BUFFER(runstate, GlobalState), + VMSTATE_END_OF_LIST() + }, +}; + +void register_global_state(void) +{ + /* We would use it independently that we receive it */ + strcpy((char *)&global_state.runstate, ""); + global_state.received =3D false; + vmstate_register(NULL, 0, &vmstate_globalstate, &global_state); +} diff --git a/migration/migration.c b/migration/migration.c index 603d39d..6a7620b 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -23,6 +23,7 @@ #include "socket.h" #include "rdma.h" #include "ram.h" +#include "migration/global_state.h" #include "migration/migration.h" #include "savevm.h" #include "qemu-file-channel.h" @@ -164,126 +165,6 @@ void migration_incoming_state_destroy(void) qemu_event_destroy(&mis->main_thread_load_event); } =20 - -typedef struct { - bool optional; - uint32_t size; - uint8_t runstate[100]; - RunState state; - bool received; -} GlobalState; - -static GlobalState global_state; - -int global_state_store(void) -{ - if (!runstate_store((char *)global_state.runstate, - sizeof(global_state.runstate))) { - error_report("runstate name too big: %s", global_state.runstate); - trace_migrate_state_too_big(); - return -EINVAL; - } - return 0; -} - -void global_state_store_running(void) -{ - const char *state =3D RunState_lookup[RUN_STATE_RUNNING]; - strncpy((char *)global_state.runstate, - state, sizeof(global_state.runstate)); -} - -static bool global_state_received(void) -{ - return global_state.received; -} - -static RunState global_state_get_runstate(void) -{ - return global_state.state; -} - -void global_state_set_optional(void) -{ - global_state.optional =3D true; -} - -static bool global_state_needed(void *opaque) -{ - GlobalState *s =3D opaque; - char *runstate =3D (char *)s->runstate; - - /* If it is not optional, it is mandatory */ - - if (s->optional =3D=3D false) { - return true; - } - - /* If state is running or paused, it is not needed */ - - if (strcmp(runstate, "running") =3D=3D 0 || - strcmp(runstate, "paused") =3D=3D 0) { - return false; - } - - /* for any other state it is needed */ - return true; -} - -static int global_state_post_load(void *opaque, int version_id) -{ - GlobalState *s =3D opaque; - Error *local_err =3D NULL; - int r; - char *runstate =3D (char *)s->runstate; - - s->received =3D true; - trace_migrate_global_state_post_load(runstate); - - r =3D qapi_enum_parse(RunState_lookup, runstate, RUN_STATE__MAX, - -1, &local_err); - - if (r =3D=3D -1) { - if (local_err) { - error_report_err(local_err); - } - return -EINVAL; - } - s->state =3D r; - - return 0; -} - -static void global_state_pre_save(void *opaque) -{ - GlobalState *s =3D opaque; - - trace_migrate_global_state_pre_save((char *)s->runstate); - s->size =3D strlen((char *)s->runstate) + 1; -} - -static const VMStateDescription vmstate_globalstate =3D { - .name =3D "globalstate", - .version_id =3D 1, - .minimum_version_id =3D 1, - .post_load =3D global_state_post_load, - .pre_save =3D global_state_pre_save, - .needed =3D global_state_needed, - .fields =3D (VMStateField[]) { - VMSTATE_UINT32(size, GlobalState), - VMSTATE_BUFFER(runstate, GlobalState), - VMSTATE_END_OF_LIST() - }, -}; - -void register_global_state(void) -{ - /* We would use it independently that we receive it */ - strcpy((char *)&global_state.runstate, ""); - global_state.received =3D false; - vmstate_register(NULL, 0, &vmstate_globalstate, &global_state); -} - static void migrate_generate_event(int new_state) { if (migrate_use_events()) { diff --git a/migration/savevm.c b/migration/savevm.c index 543635b..265e908 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -38,6 +38,7 @@ #include "migration/snapshot.h" #include "migration/misc.h" #include "migration/register.h" +#include "migration/global_state.h" #include "ram.h" #include "qemu-file-channel.h" #include "qemu-file.h" diff --git a/vl.c b/vl.c index 80b86c0..bf9aa6a 100644 --- a/vl.c +++ b/vl.c @@ -88,6 +88,7 @@ int main(int argc, char **argv) #include "hw/block/block.h" #include "migration/misc.h" #include "migration/snapshot.h" +#include "migration/global_state.h" #include "sysemu/tpm.h" #include "sysemu/dma.h" #include "hw/audio/soundhw.h" --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496353114420304.7143402459534; Thu, 1 Jun 2017 14:38:34 -0700 (PDT) Received: from localhost ([::1]:46737 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXnc-0007Hs-Tq for importer@patchew.org; Thu, 01 Jun 2017 17:38:32 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60510) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfR-0008TT-4Z for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfO-00088L-AD for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40258) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfO-00087W-27 for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:02 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 0FEEE3DBE3 for ; Thu, 1 Jun 2017 21:30:01 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 386F451DE3; Thu, 1 Jun 2017 21:29:59 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 0FEEE3DBE3 Authentication-Results: ext-mx06.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx06.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 0FEEE3DBE3 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:19 +0200 Message-Id: <20170601212921.30241-10-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Thu, 01 Jun 2017 21:30:01 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 09/11] migration: Move remaining exported functions to migration/misc.h X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Juan Quintela Reviewed-by: Peter Xu Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/i386/pc_piix.c | 2 +- hw/ppc/spapr.c | 2 +- hw/xen/xen-common.c | 2 +- include/migration/migration.h | 13 ------------- include/migration/misc.h | 12 ++++++++++++ migration/migration.c | 1 + qdev-monitor.c | 2 +- ui/spice-core.c | 2 +- vl.c | 1 - 9 files changed, 18 insertions(+), 19 deletions(-) diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index dc19d96..46a2bc4 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -53,7 +53,7 @@ #include "hw/xen/xen_pt.h" #endif #include "migration/global_state.h" -#include "migration/migration.h" +#include "migration/misc.h" #include "kvm_i386.h" #include "sysemu/numa.h" =20 diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index ac8a317..0aadde6 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -38,7 +38,7 @@ #include "sysemu/cpus.h" #include "sysemu/hw_accel.h" #include "kvm_ppc.h" -#include "migration/migration.h" +#include "migration/misc.h" #include "migration/global_state.h" #include "migration/register.h" #include "mmu-hash64.h" diff --git a/hw/xen/xen-common.c b/hw/xen/xen-common.c index e265445..19ad79c 100644 --- a/hw/xen/xen-common.c +++ b/hw/xen/xen-common.c @@ -13,7 +13,7 @@ #include "qmp-commands.h" #include "sysemu/char.h" #include "sysemu/accel.h" -#include "migration/migration.h" +#include "migration/misc.h" #include "migration/global_state.h" =20 //#define DEBUG_XEN diff --git a/include/migration/migration.h b/include/migration/migration.h index 5050454..601e4ab 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -122,26 +122,16 @@ void migrate_set_state(int *state, int old_state, int= new_state); =20 void migration_fd_process_incoming(QEMUFile *f); =20 -void qemu_start_incoming_migration(const char *uri, Error **errp); - uint64_t migrate_max_downtime(void); =20 void migrate_fd_error(MigrationState *s, const Error *error); =20 void migrate_fd_connect(MigrationState *s); =20 -void add_migration_state_change_notifier(Notifier *notify); -void remove_migration_state_change_notifier(Notifier *notify); MigrationState *migrate_init(void); bool migration_is_blocked(Error **errp); -bool migration_in_setup(MigrationState *); -bool migration_is_idle(void); -bool migration_has_finished(MigrationState *); -bool migration_has_failed(MigrationState *); /* True if outgoing migration has entered postcopy phase */ bool migration_in_postcopy(void); -/* ...and after the device transmission */ -bool migration_in_postcopy_after_devices(MigrationState *); MigrationState *migrate_get_current(void); =20 bool migrate_release_ram(void); @@ -171,7 +161,4 @@ void migrate_send_rp_pong(MigrationIncomingState *mis, void migrate_send_rp_req_pages(MigrationIncomingState *mis, const char* rb= name, ram_addr_t start, size_t len); =20 -void savevm_skip_section_footers(void); -void savevm_skip_configuration(void); - #endif diff --git a/include/migration/misc.h b/include/migration/misc.h index 026b561..d5a433a 100644 --- a/include/migration/misc.h +++ b/include/migration/misc.h @@ -39,5 +39,17 @@ int64_t self_announce_delay(int round) /* migration/savevm.c */ =20 void dump_vmstate_json_to_file(FILE *out_fp); +void savevm_skip_section_footers(void); +void savevm_skip_configuration(void); =20 +/* migration/migration.c */ +void qemu_start_incoming_migration(const char *uri, Error **errp); +bool migration_is_idle(void); +void add_migration_state_change_notifier(Notifier *notify); +void remove_migration_state_change_notifier(Notifier *notify); +bool migration_in_setup(MigrationState *); +bool migration_has_finished(MigrationState *); +bool migration_has_failed(MigrationState *); +/* ...and after the device transmission */ +bool migration_in_postcopy_after_devices(MigrationState *); #endif diff --git a/migration/migration.c b/migration/migration.c index 6a7620b..b6c0cfd 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -24,6 +24,7 @@ #include "rdma.h" #include "ram.h" #include "migration/global_state.h" +#include "migration/misc.h" #include "migration/migration.h" #include "savevm.h" #include "qemu-file-channel.h" diff --git a/qdev-monitor.c b/qdev-monitor.c index 3ecbf0b..8fd6df9 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -29,7 +29,7 @@ #include "qemu/error-report.h" #include "qemu/help_option.h" #include "sysemu/block-backend.h" -#include "migration/migration.h" +#include "migration/misc.h" =20 /* * Aliases were a bad idea from the start. Let's keep them diff --git a/ui/spice-core.c b/ui/spice-core.c index 804abc5..a087ad5 100644 --- a/ui/spice-core.c +++ b/ui/spice-core.c @@ -35,7 +35,7 @@ #include "qapi/qmp/qstring.h" #include "qapi/qmp/qjson.h" #include "qemu/notify.h" -#include "migration/migration.h" +#include "migration/misc.h" #include "hw/hw.h" #include "ui/spice-display.h" #include "qapi-event.h" diff --git a/vl.c b/vl.c index bf9aa6a..d442e42 100644 --- a/vl.c +++ b/vl.c @@ -93,7 +93,6 @@ int main(int argc, char **argv) #include "sysemu/dma.h" #include "hw/audio/soundhw.h" #include "audio/audio.h" -#include "migration/migration.h" #include "sysemu/cpus.h" #include "migration/colo.h" #include "sysemu/kvm.h" --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 149635300786141.88509115394345; Thu, 1 Jun 2017 14:36:47 -0700 (PDT) Received: from localhost ([::1]:46720 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXlu-0005ZG-FF for importer@patchew.org; Thu, 01 Jun 2017 17:36:46 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60619) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfa-0000G4-Am for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfX-0008JU-69 for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:14 -0400 Received: from mx1.redhat.com ([209.132.183.28]:48702) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfW-0008Ix-Up for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:11 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id EA768142A81 for ; Thu, 1 Jun 2017 21:30:09 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6137360E38; Thu, 1 Jun 2017 21:30:01 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com EA768142A81 Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com EA768142A81 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:20 +0200 Message-Id: <20170601212921.30241-11-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Thu, 01 Jun 2017 21:30:10 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 10/11] migration: Move migration.h to migration/ X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Nothing uses it outside of migration.h Signed-off-by: Juan Quintela Reviewed-by: Laurent Vivier Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- migration/block.c | 2 +- migration/channel.c | 2 +- migration/colo-comm.c | 2 +- migration/colo.c | 2 +- migration/exec.c | 2 +- migration/fd.c | 2 +- migration/migration.c | 2 +- {include/migration =3D> migration}/migration.h | 0 migration/postcopy-ram.c | 2 +- migration/qemu-file.c | 2 +- migration/ram.c | 2 +- migration/rdma.c | 2 +- migration/savevm.c | 2 +- migration/socket.c | 2 +- migration/tls.c | 2 +- migration/vmstate-types.c | 2 +- migration/vmstate.c | 2 +- tests/test-vmstate.c | 2 +- 18 files changed, 17 insertions(+), 17 deletions(-) rename {include/migration =3D> migration}/migration.h (100%) diff --git a/migration/block.c b/migration/block.c index 30ab531..21c7fac 100644 --- a/migration/block.c +++ b/migration/block.c @@ -25,7 +25,7 @@ #include "qemu/timer.h" #include "block.h" #include "migration/misc.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/register.h" #include "sysemu/blockdev.h" #include "qemu-file.h" diff --git a/migration/channel.c b/migration/channel.c index 92f6f99..3b7252f 100644 --- a/migration/channel.c +++ b/migration/channel.c @@ -13,7 +13,7 @@ #include "qemu/osdep.h" #include "channel.h" #include "tls.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file-channel.h" #include "trace.h" #include "qapi/error.h" diff --git a/migration/colo-comm.c b/migration/colo-comm.c index 8bfdf68..b61aa19 100644 --- a/migration/colo-comm.c +++ b/migration/colo-comm.c @@ -12,7 +12,7 @@ */ =20 #include "qemu/osdep.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/colo.h" #include "migration/vmstate.h" #include "trace.h" diff --git a/migration/colo.c b/migration/colo.c index 111b715..45e9b46 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -14,7 +14,7 @@ #include "qemu/timer.h" #include "sysemu/sysemu.h" #include "qemu-file-channel.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file.h" #include "savevm.h" #include "migration/colo.h" diff --git a/migration/exec.c b/migration/exec.c index fc78eeb..b1de445 100644 --- a/migration/exec.c +++ b/migration/exec.c @@ -22,7 +22,7 @@ #include "qemu-common.h" #include "channel.h" #include "exec.h" -#include "migration/migration.h" +#include "migration.h" #include "io/channel-command.h" #include "trace.h" =20 diff --git a/migration/fd.c b/migration/fd.c index 8a04dcd..b2384bf 100644 --- a/migration/fd.c +++ b/migration/fd.c @@ -19,7 +19,7 @@ #include "qemu-common.h" #include "channel.h" #include "fd.h" -#include "migration/migration.h" +#include "migration.h" #include "monitor/monitor.h" #include "io/channel-util.h" #include "trace.h" diff --git a/migration/migration.c b/migration/migration.c index b6c0cfd..956e36c 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -25,7 +25,7 @@ #include "ram.h" #include "migration/global_state.h" #include "migration/misc.h" -#include "migration/migration.h" +#include "migration.h" #include "savevm.h" #include "qemu-file-channel.h" #include "qemu-file.h" diff --git a/include/migration/migration.h b/migration/migration.h similarity index 100% rename from include/migration/migration.h rename to migration/migration.h diff --git a/migration/postcopy-ram.c b/migration/postcopy-ram.c index 9c41887..c8c4500 100644 --- a/migration/postcopy-ram.c +++ b/migration/postcopy-ram.c @@ -20,7 +20,7 @@ =20 #include "qemu-common.h" #include "exec/target_page.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file.h" #include "savevm.h" #include "postcopy-ram.h" diff --git a/migration/qemu-file.c b/migration/qemu-file.c index ab26f4e..e65c373 100644 --- a/migration/qemu-file.c +++ b/migration/qemu-file.c @@ -28,7 +28,7 @@ #include "qemu/iov.h" #include "qemu/sockets.h" #include "qemu/coroutine.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file.h" #include "trace.h" =20 diff --git a/migration/ram.c b/migration/ram.c index 31b4d6a..fe307ce 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -37,7 +37,7 @@ #include "qemu/main-loop.h" #include "xbzrle.h" #include "ram.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/register.h" #include "migration/misc.h" #include "qemu-file.h" diff --git a/migration/rdma.c b/migration/rdma.c index e446c6f..c6bc607 100644 --- a/migration/rdma.c +++ b/migration/rdma.c @@ -18,7 +18,7 @@ #include "qemu-common.h" #include "qemu/cutils.h" #include "rdma.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file.h" #include "ram.h" #include "qemu-file-channel.h" diff --git a/migration/savevm.c b/migration/savevm.c index 265e908..ba709bb 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -34,7 +34,7 @@ #include "net/net.h" #include "sysemu/sysemu.h" #include "qemu/timer.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/snapshot.h" #include "migration/misc.h" #include "migration/register.h" diff --git a/migration/socket.c b/migration/socket.c index 50dc8d8..757d382 100644 --- a/migration/socket.c +++ b/migration/socket.c @@ -21,7 +21,7 @@ #include "qapi/error.h" #include "channel.h" #include "socket.h" -#include "migration/migration.h" +#include "migration.h" #include "qemu-file.h" #include "io/channel-socket.h" #include "trace.h" diff --git a/migration/tls.c b/migration/tls.c index d3abd6e..596e879 100644 --- a/migration/tls.c +++ b/migration/tls.c @@ -20,7 +20,7 @@ =20 #include "qemu/osdep.h" #include "channel.h" -#include "migration/migration.h" +#include "migration.h" #include "tls.h" #include "io/channel-tls.h" #include "crypto/tlscreds.h" diff --git a/migration/vmstate-types.c b/migration/vmstate-types.c index 7287c6b..02f05a3 100644 --- a/migration/vmstate-types.c +++ b/migration/vmstate-types.c @@ -14,7 +14,7 @@ #include "qemu-common.h" #include "exec/cpu-common.h" #include "qemu-file.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/vmstate.h" #include "qemu/error-report.h" #include "qemu/queue.h" diff --git a/migration/vmstate.c b/migration/vmstate.c index 377d951..3226e8e 100644 --- a/migration/vmstate.c +++ b/migration/vmstate.c @@ -12,7 +12,7 @@ =20 #include "qemu/osdep.h" #include "qemu-common.h" -#include "migration/migration.h" +#include "migration.h" #include "migration/vmstate.h" #include "migration/savevm.h" #include "qemu-file.h" diff --git a/tests/test-vmstate.c b/tests/test-vmstate.c index f30433a..ee292c7 100644 --- a/tests/test-vmstate.c +++ b/tests/test-vmstate.c @@ -25,7 +25,7 @@ #include "qemu/osdep.h" =20 #include "qemu-common.h" -#include "migration/migration.h" +#include "../migration/migration.h" #include "migration/vmstate.h" #include "migration/qemu-file-types.h" #include "../migration/qemu-file.h" --=20 2.9.4 From nobody Mon May 6 14:12:11 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1496352887390586.147118298968; Thu, 1 Jun 2017 14:34:47 -0700 (PDT) Received: from localhost ([::1]:46706 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXjx-0003ss-VT for importer@patchew.org; Thu, 01 Jun 2017 17:34:46 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60627) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dGXfa-0000GO-MY for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dGXfZ-0008L9-9G for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:14 -0400 Received: from mx1.redhat.com ([209.132.183.28]:59908) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dGXfY-0008KY-W9 for qemu-devel@nongnu.org; Thu, 01 Jun 2017 17:30:13 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id ECCAEC0587C3 for ; Thu, 1 Jun 2017 21:30:11 +0000 (UTC) Received: from secure.mitica (ovpn-117-3.ams2.redhat.com [10.36.117.3]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3EF7B60E38; Thu, 1 Jun 2017 21:30:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com ECCAEC0587C3 Authentication-Results: ext-mx08.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx08.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=quintela@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com ECCAEC0587C3 From: Juan Quintela To: qemu-devel@nongnu.org Date: Thu, 1 Jun 2017 23:29:21 +0200 Message-Id: <20170601212921.30241-12-quintela@redhat.com> In-Reply-To: <20170601212921.30241-1-quintela@redhat.com> References: <20170601212921.30241-1-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Thu, 01 Jun 2017 21:30:12 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 11/11] migration: Remove unneeded includes X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lvivier@redhat.com, dgilbert@redhat.com, peterx@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Juan Quintela Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/migration/colo.h | 3 --- include/migration/misc.h | 2 ++ migration/block.c | 6 ------ migration/colo-failover.c | 2 ++ migration/colo.c | 2 -- migration/exec.c | 2 -- migration/fd.c | 2 -- migration/global_state.c | 1 - migration/migration.c | 6 ------ migration/migration.h | 2 -- migration/postcopy-ram.c | 4 +--- migration/qemu-file.c | 2 -- migration/ram.c | 4 ---- migration/savevm.c | 6 ------ 14 files changed, 5 insertions(+), 39 deletions(-) diff --git a/include/migration/colo.h b/include/migration/colo.h index ba0bb6e..be6beba 100644 --- a/include/migration/colo.h +++ b/include/migration/colo.h @@ -14,9 +14,6 @@ #define QEMU_COLO_H =20 #include "qemu-common.h" -#include "qemu/coroutine_int.h" -#include "qemu/thread.h" -#include "qemu/main-loop.h" =20 bool colo_supported(void); void colo_info_init(void); diff --git a/include/migration/misc.h b/include/migration/misc.h index d5a433a..65c7070 100644 --- a/include/migration/misc.h +++ b/include/migration/misc.h @@ -14,6 +14,8 @@ #ifndef MIGRATION_MISC_H #define MIGRATION_MISC_H =20 +#include "qemu/notify.h" + /* migration/ram.c */ =20 void ram_mig_init(void); diff --git a/migration/block.c b/migration/block.c index 21c7fac..14a8a84 100644 --- a/migration/block.c +++ b/migration/block.c @@ -15,19 +15,13 @@ =20 #include "qemu/osdep.h" #include "qapi/error.h" -#include "qemu-common.h" -#include "block/block.h" #include "qemu/error-report.h" -#include "qemu/main-loop.h" -#include "hw/hw.h" #include "qemu/cutils.h" #include "qemu/queue.h" -#include "qemu/timer.h" #include "block.h" #include "migration/misc.h" #include "migration.h" #include "migration/register.h" -#include "sysemu/blockdev.h" #include "qemu-file.h" #include "migration/vmstate.h" #include "sysemu/block-backend.h" diff --git a/migration/colo-failover.c b/migration/colo-failover.c index cc229f5..f991486 100644 --- a/migration/colo-failover.c +++ b/migration/colo-failover.c @@ -13,6 +13,8 @@ #include "qemu/osdep.h" #include "migration/colo.h" #include "migration/failover.h" +#include "qemu/main-loop.h" +#include "migration.h" #include "qmp-commands.h" #include "qapi/qmp/qerror.h" #include "qemu/error-report.h" diff --git a/migration/colo.c b/migration/colo.c index 45e9b46..c436d63 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -11,7 +11,6 @@ */ =20 #include "qemu/osdep.h" -#include "qemu/timer.h" #include "sysemu/sysemu.h" #include "qemu-file-channel.h" #include "migration.h" @@ -22,7 +21,6 @@ #include "io/channel-buffer.h" #include "trace.h" #include "qemu/error-report.h" -#include "qapi/error.h" #include "migration/failover.h" #include "replication.h" #include "qmp-commands.h" diff --git a/migration/exec.c b/migration/exec.c index b1de445..08b599e 100644 --- a/migration/exec.c +++ b/migration/exec.c @@ -19,10 +19,8 @@ =20 #include "qemu/osdep.h" #include "qapi/error.h" -#include "qemu-common.h" #include "channel.h" #include "exec.h" -#include "migration.h" #include "io/channel-command.h" #include "trace.h" =20 diff --git a/migration/fd.c b/migration/fd.c index b2384bf..30f5258 100644 --- a/migration/fd.c +++ b/migration/fd.c @@ -16,10 +16,8 @@ =20 #include "qemu/osdep.h" #include "qapi/error.h" -#include "qemu-common.h" #include "channel.h" #include "fd.h" -#include "migration.h" #include "monitor/monitor.h" #include "io/channel-util.h" #include "trace.h" diff --git a/migration/global_state.c b/migration/global_state.c index 16ac63f..f792cf5 100644 --- a/migration/global_state.c +++ b/migration/global_state.c @@ -17,7 +17,6 @@ #include "qapi/util.h" #include "migration/global_state.h" #include "migration/vmstate.h" -#include "sysemu/sysemu.h" #include "trace.h" =20 typedef struct { diff --git a/migration/migration.c b/migration/migration.c index 956e36c..60da9d6 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -16,7 +16,6 @@ #include "qemu/osdep.h" #include "qemu/cutils.h" #include "qemu/error-report.h" -#include "qemu/main-loop.h" #include "migration/blocker.h" #include "exec.h" #include "fd.h" @@ -30,11 +29,9 @@ #include "qemu-file-channel.h" #include "qemu-file.h" #include "migration/vmstate.h" -#include "sysemu/sysemu.h" #include "block/block.h" #include "qapi/qmp/qerror.h" #include "qapi/util.h" -#include "qemu/sockets.h" #include "qemu/rcu.h" #include "block.h" #include "postcopy-ram.h" @@ -42,9 +39,6 @@ #include "qmp-commands.h" #include "trace.h" #include "qapi-event.h" -#include "qom/cpu.h" -#include "exec/memory.h" -#include "exec/address-spaces.h" #include "exec/target_page.h" #include "io/channel-buffer.h" #include "migration/colo.h" diff --git a/migration/migration.h b/migration/migration.h index 601e4ab..d9a268a 100644 --- a/migration/migration.h +++ b/migration/migration.h @@ -14,10 +14,8 @@ #ifndef QEMU_MIGRATION_H #define QEMU_MIGRATION_H =20 -#include "qapi/qmp/qdict.h" #include "qemu-common.h" #include "qemu/thread.h" -#include "qemu/notify.h" #include "qapi-types.h" #include "exec/cpu-common.h" #include "qemu/coroutine_int.h" diff --git a/migration/postcopy-ram.c b/migration/postcopy-ram.c index c8c4500..922702b 100644 --- a/migration/postcopy-ram.c +++ b/migration/postcopy-ram.c @@ -17,14 +17,12 @@ */ =20 #include "qemu/osdep.h" - -#include "qemu-common.h" #include "exec/target_page.h" #include "migration.h" #include "qemu-file.h" -#include "savevm.h" #include "postcopy-ram.h" #include "ram.h" +#include "savevm.h" #include "sysemu/sysemu.h" #include "sysemu/balloon.h" #include "qemu/error-report.h" diff --git a/migration/qemu-file.c b/migration/qemu-file.c index e65c373..2ab2bf3 100644 --- a/migration/qemu-file.c +++ b/migration/qemu-file.c @@ -26,8 +26,6 @@ #include "qemu-common.h" #include "qemu/error-report.h" #include "qemu/iov.h" -#include "qemu/sockets.h" -#include "qemu/coroutine.h" #include "migration.h" #include "qemu-file.h" #include "trace.h" diff --git a/migration/ram.c b/migration/ram.c index fe307ce..db7f4b0 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -26,14 +26,12 @@ * THE SOFTWARE. */ #include "qemu/osdep.h" -#include "qemu-common.h" #include "cpu.h" #include #include "qapi-event.h" #include "qemu/cutils.h" #include "qemu/bitops.h" #include "qemu/bitmap.h" -#include "qemu/timer.h" #include "qemu/main-loop.h" #include "xbzrle.h" #include "ram.h" @@ -41,9 +39,7 @@ #include "migration/register.h" #include "migration/misc.h" #include "qemu-file.h" -#include "migration/vmstate.h" #include "postcopy-ram.h" -#include "exec/address-spaces.h" #include "migration/page_cache.h" #include "qemu/error-report.h" #include "trace.h" diff --git a/migration/savevm.c b/migration/savevm.c index ba709bb..8489abf 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -28,12 +28,8 @@ =20 #include "qemu/osdep.h" #include "hw/boards.h" -#include "hw/hw.h" -#include "hw/qdev.h" #include "hw/xen/xen.h" #include "net/net.h" -#include "sysemu/sysemu.h" -#include "qemu/timer.h" #include "migration.h" #include "migration/snapshot.h" #include "migration/misc.h" @@ -46,13 +42,11 @@ #include "postcopy-ram.h" #include "qapi/qmp/qerror.h" #include "qemu/error-report.h" -#include "qemu/queue.h" #include "sysemu/cpus.h" #include "exec/memory.h" #include "exec/target_page.h" #include "qmp-commands.h" #include "trace.h" -#include "qemu/bitops.h" #include "qemu/iov.h" #include "block/snapshot.h" #include "qemu/cutils.h" --=20 2.9.4