From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59604) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ROlAB-0002xz-Jw for qemu-devel@nongnu.org; Fri, 11 Nov 2011 02:04:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ROlAA-0005FG-FF for qemu-devel@nongnu.org; Fri, 11 Nov 2011 02:04:35 -0500 Received: from e23smtp06.au.ibm.com ([202.81.31.148]:43665) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ROlA9-0005FC-RR for qemu-devel@nongnu.org; Fri, 11 Nov 2011 02:04:34 -0500 Received: from d23relay05.au.ibm.com (d23relay05.au.ibm.com [202.81.31.247]) by e23smtp06.au.ibm.com (8.14.4/8.13.1) with ESMTP id pAB6QGqn002635 for ; Fri, 11 Nov 2011 17:26:16 +1100 Received: from d23av03.au.ibm.com (d23av03.au.ibm.com [9.190.234.97]) by d23relay05.au.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id pAB6OTka1204448 for ; Fri, 11 Nov 2011 17:24:34 +1100 Received: from d23av03.au.ibm.com (loopback [127.0.0.1]) by d23av03.au.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id pAB6RWTG024479 for ; Fri, 11 Nov 2011 17:27:32 +1100 Message-ID: <4EBCC051.1060705@linux.vnet.ibm.com> Date: Fri, 11 Nov 2011 14:27:29 +0800 From: Mark Wu MIME-Version: 1.0 References: <4EBC683C.7090700@codemonkey.ws> In-Reply-To: <4EBC683C.7090700@codemonkey.ws> Content-Type: multipart/alternative; boundary="------------030302060207030205050605" Subject: Re: [Qemu-devel] Storage requirements for live migration List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , Stefan Hajnoczi , Juan Quintela , qemu-devel , Avi Kivity , Christoph Hellwig This is a multi-part message in MIME format. --------------030302060207030205050605 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 11/11/2011 08:11 AM, Anthony Liguori wrote: > I did a brain dump of my understanding of the various storage > requirements for live migration. I think it's accurate but I may have > misunderstand some details so I would appreciate review. > > I think given sections (1) and (2), the only viable thing is to > require cache=none unless we get new interfaces to flush caches. I have two questions: 1. why is "cache=writethrough" not reliable? "O_DSYNC" can guarantee data is written on disk before the operation is ultimately completed. Even if there's synchronization from memory to disk still on-going when migration happens, we needn't care about the dirty pages in host memory either because the queued request will be re-executed on destination host. So I think it's reliable too. Do I miss anything? 2. Can we flush cache for "cache=writeback" in the last phase of migration? I think it can resolve the problem of "cache coherent". But it could cause an uncertain guest downtime. Thanks. Mark --------------030302060207030205050605 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 11/11/2011 08:11 AM, Anthony Liguori wrote:
I did a brain dump of my understanding of the various storage requirements for live migration.  I think it's accurate but I may have misunderstand some details so I would appreciate review.

I think given sections (1) and (2), the only viable thing is to require cache=none unless we get new interfaces to flush caches.
I have two questions:
1. why is "cache=writethrough" not reliable?  "O_DSYNC" can guarantee data is written on disk before the operation is ultimately completed. Even if there's synchronization from memory to disk still on-going when migration happens,  we needn't care about the dirty pages in host memory either because the queued request will be re-executed on destination host.  So I think it's reliable too.  Do I miss anything?

2. Can we flush cache for "cache=writeback" in the last phase of migration? I think it can resolve the problem of "cache coherent". But it could cause an uncertain guest downtime.

Thanks.
Mark
--------------030302060207030205050605--