From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:52799) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TlsJc-0000VC-Ri for qemu-devel@nongnu.org; Thu, 20 Dec 2012 21:26:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TlsJY-0005R6-Fg for qemu-devel@nongnu.org; Thu, 20 Dec 2012 21:26:24 -0500 Received: from e28smtp09.in.ibm.com ([122.248.162.9]:45921) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TlsJX-0005R0-Sv for qemu-devel@nongnu.org; Thu, 20 Dec 2012 21:26:20 -0500 Received: from /spool/local by e28smtp09.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 21 Dec 2012 07:55:48 +0530 Received: from d28relay02.in.ibm.com (d28relay02.in.ibm.com [9.184.220.59]) by d28dlp01.in.ibm.com (Postfix) with ESMTP id DC2CFE004B for ; Fri, 21 Dec 2012 07:56:04 +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 qBL2QABL12648634 for ; Fri, 21 Dec 2012 07:56:11 +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 qBL2QBvG002167 for ; Fri, 21 Dec 2012 02:26:11 GMT Message-ID: <50D3C8AF.7050506@linux.vnet.ibm.com> Date: Fri, 21 Dec 2012 10:25:51 +0800 From: Wenchao Xia MIME-Version: 1.0 References: <50D2CC22.1060900@linux.vnet.ibm.com> In-Reply-To: <50D2CC22.1060900@linux.vnet.ibm.com> Content-Type: text/plain; charset=GB2312 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [RFC] lively write vmstate with predictable size List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori , Paolo Bonzini , Stefan Hajnoczi , Juan Quintela , Pavel Hrdina , Dietmar Maurer , qemu-devel resent the mail to mail-list. ------------------- Hi, Paolo and Juan Currently savevm needs pause vm, and I am working on that make it lively. Considering the flexibility I'd like to split out the functions apart as following: 1) snapshot lively internal/external 2) save vmstate lively internal/external 3) assemble them as will 1) was sent at http://lists.nongnu.org/archive/html/qemu-devel/2012-12/msg02393.html but for 2), I think it have problem because file size may grow to a size out of control. Considering the migration code, I'd like to propose a way to fix it as following: Migration logic: Src send->dest recv->data analysis->copy data Savevm logic: Src send->write data to qcow2. My suggestion: Savevm logic: Src send->dest recv->data analysis->write data to qcow2/external with addr. The idea is do the write operation after data analysis, and overwrite old data if address overlaps. So this will need qcow2 support write snapshot data at "address", and also change some savevm logic. Could u give some some comments on this to see if it is workable? -- Best Regards Wenchao Xia