From patchwork Wed Apr 10 22:28:13 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mrhines@linux.vnet.ibm.com X-Patchwork-Id: 235500 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 9A7F32C00BB for ; Thu, 11 Apr 2013 08:29:15 +1000 (EST) Received: from localhost ([::1]:48417 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UQ3Vx-00080f-QR for incoming@patchwork.ozlabs.org; Wed, 10 Apr 2013 18:29:13 -0400 Received: from eggs.gnu.org ([208.118.235.92]:57046) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UQ3VK-0007tv-Fu for qemu-devel@nongnu.org; Wed, 10 Apr 2013 18:28:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UQ3VH-00018s-Jq for qemu-devel@nongnu.org; Wed, 10 Apr 2013 18:28:34 -0400 Received: from e39.co.us.ibm.com ([32.97.110.160]:56861) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UQ3VH-00018i-8H for qemu-devel@nongnu.org; Wed, 10 Apr 2013 18:28:31 -0400 Received: from /spool/local by e39.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 10 Apr 2013 16:28:30 -0600 Received: from d03dlp02.boulder.ibm.com (9.17.202.178) by e39.co.us.ibm.com (192.168.1.139) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Wed, 10 Apr 2013 16:28:28 -0600 Received: from d03relay03.boulder.ibm.com (d03relay03.boulder.ibm.com [9.17.195.228]) by d03dlp02.boulder.ibm.com (Postfix) with ESMTP id 29CCA3E40040 for ; Wed, 10 Apr 2013 16:28:15 -0600 (MDT) Received: from d03av06.boulder.ibm.com (d03av06.boulder.ibm.com [9.17.195.245]) by d03relay03.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r3AMSRQn123956 for ; Wed, 10 Apr 2013 16:28:27 -0600 Received: from d03av06.boulder.ibm.com (loopback [127.0.0.1]) by d03av06.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r3AMVEvf003243 for ; Wed, 10 Apr 2013 16:31:14 -0600 Received: from mrhinesdev.klabtestbed.com (klinux.watson.ibm.com [9.2.208.21]) by d03av06.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id r3AMV9km002979; Wed, 10 Apr 2013 16:31:13 -0600 From: mrhines@linux.vnet.ibm.com To: qemu-devel@nongnu.org Date: Wed, 10 Apr 2013 18:28:13 -0400 Message-Id: <1365632901-15470-6-git-send-email-mrhines@linux.vnet.ibm.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1365632901-15470-1-git-send-email-mrhines@linux.vnet.ibm.com> References: <1365632901-15470-1-git-send-email-mrhines@linux.vnet.ibm.com> X-TM-AS-MML: No X-Content-Scanned: Fidelis XPS MAILER x-cbid: 13041022-3620-0000-0000-000001FB90AA X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 32.97.110.160 Cc: aliguori@us.ibm.com, mst@redhat.com, owasserm@redhat.com, abali@us.ibm.com, mrhines@us.ibm.com, gokul@us.ibm.com, pbonzini@redhat.com Subject: [Qemu-devel] [RFC PATCH RDMA support v1: 05/13] accessor function prototypes for new QEMUFileOps hooks X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: "Michael R. Hines" These are just the protytpes of the accessor methods used by arch_init.c which invoke functions inside savevm.c to call out to the hooks that may (or may not) have been overridden inside of QEMUFileOps. The actual definitions come later in the patch series. Signed-off-by: Michael R. Hines --- include/migration/migration.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/include/migration/migration.h b/include/migration/migration.h index e2acec6..a5222f5 100644 --- a/include/migration/migration.h +++ b/include/migration/migration.h @@ -21,6 +21,7 @@ #include "qapi/error.h" #include "migration/vmstate.h" #include "qapi-types.h" +#include "exec/cpu-common.h" struct MigrationParams { bool blk; @@ -75,6 +76,10 @@ void fd_start_incoming_migration(const char *path, Error **errp); void fd_start_outgoing_migration(MigrationState *s, const char *fdname, Error **errp); +void rdma_start_outgoing_migration(void *opaque, const char *host_port, Error **errp); + +void rdma_start_incoming_migration(const char * host_port, Error **errp); + void migrate_fd_error(MigrationState *s); void migrate_fd_connect(MigrationState *s); @@ -127,4 +132,22 @@ int migrate_use_xbzrle(void); int64_t migrate_xbzrle_cache_size(void); int64_t xbzrle_cache_resize(int64_t new_size); + +bool migrate_check_for_zero(void); +bool migrate_chunk_register_destination(void); + +void ram_control_before_iterate(QEMUFile *f, uint32_t flags); +void ram_control_after_iterate(QEMUFile *f, uint32_t flags); +void ram_control_load_hook(QEMUFile *f, uint32_t flags); +size_t ram_control_save_page(QEMUFile *f, + ram_addr_t block_offset, + ram_addr_t offset, int cont, + size_t size, bool zero); + +/* + * Prototype used by both arch_init.c and migration_rdma.c + * because of RAM_SAVE_FLAG_HOOK + */ +int qemu_rdma_registration_start(QEMUFile *f, void *opaque, uint32_t flags); + #endif