From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:34888) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tgtes-000230-5Z for qemu-devel@nongnu.org; Fri, 07 Dec 2012 03:51:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Tgtem-0001WB-Dy for qemu-devel@nongnu.org; Fri, 07 Dec 2012 03:51:46 -0500 Received: from e28smtp04.in.ibm.com ([122.248.162.4]:60159) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tgtel-0001Vw-QO for qemu-devel@nongnu.org; Fri, 07 Dec 2012 03:51:40 -0500 Received: from /spool/local by e28smtp04.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 7 Dec 2012 14:21:21 +0530 Received: from d28relay02.in.ibm.com (d28relay02.in.ibm.com [9.184.220.59]) by d28dlp02.in.ibm.com (Postfix) with ESMTP id CC2FB394004E for ; Fri, 7 Dec 2012 14:21:30 +0530 (IST) Received: from d28av01.in.ibm.com (d28av01.in.ibm.com [9.184.220.63]) by d28relay02.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id qB78pT1U26673246 for ; Fri, 7 Dec 2012 14:21:29 +0530 Received: from d28av01.in.ibm.com (loopback [127.0.0.1]) by d28av01.in.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id qB78pTlu015739 for ; Fri, 7 Dec 2012 08:51:29 GMT From: Wenchao Xia Date: Sat, 8 Dec 2012 16:24:17 +0800 Message-Id: <1354955059-14391-1-git-send-email-xiawenc@linux.vnet.ibm.com> Subject: [Qemu-devel] [RFC PATCH 0/2] live backup vm List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, aliguori@us.ibm.com, stefanha@gmail.com, Wenchao Xia , blauwirbel@gmail.com, pbonzini@redhat.com, dietmar@proxmox.com This patch is a scratch which enables a full live backup of VM, actually it is equal to savevm lively. As a test it uses hmp command migrate to trigger the action. The ultimate goal is providing another command to user as: snapshotvm [with_state] [internal] [live] which then create vm backups with a screen image(I am not sure if a screen snapshot is supported in qemu now). This function is enabled in VMWARE which can automatically create full vm snapshots lively with a screen image which seems cool, so I want to introduce it to qemu. Limitations: currently only implemented "snapshotvm with_state internal live" case. no screen captured in the time of creating snapshots. no good integration with existing savevm, migration, snapshot_blkdev code. no test case yet. hmp/qmp API not added. Although there are so many gaps, but I want to send these patch first to make sure I am in the right direction, esp the implemention of savevm lively with vmstate, to see if there is potentional problem, such as creating snapshots takes too long? Other cases would be simpler if this case have no major problem found. Wenchao Xia (2): live backup vm, export functions live backup vm, snapshots all lively block.c | 21 ++++++ block.h | 2 + buffered_file.c | 106 +++++++++++++++++++++++++++ buffered_file.h | 1 + migration.c | 215 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ migration.h | 13 ++++ savevm.c | 37 +++------- sysemu.h | 2 + 8 files changed, 371 insertions(+), 26 deletions(-)