From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=37527 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OvuL3-0006Xq-8Z for qemu-devel@nongnu.org; Wed, 15 Sep 2010 11:56:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OvuKt-0002gW-BK for qemu-devel@nongnu.org; Wed, 15 Sep 2010 11:55:57 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36191) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OvuKt-0002gS-07 for qemu-devel@nongnu.org; Wed, 15 Sep 2010 11:55:51 -0400 From: Juan Quintela In-Reply-To: <1284213896-12705-2-git-send-email-aliguori@us.ibm.com> (Anthony Liguori's message of "Sat, 11 Sep 2010 09:04:54 -0500") References: <1284213896-12705-1-git-send-email-aliguori@us.ibm.com> <1284213896-12705-2-git-send-email-aliguori@us.ibm.com> Date: Wed, 15 Sep 2010 17:53:13 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: [Qemu-devel] Re: [PATCH 1/3] block: allow migration to work with image files List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , qemu-devel@nongnu.org, Stefan Hajnoczi Anthony Liguori wrote: > Image files have two types of data: immutable data that describes things like > image size, backing files, etc. and mutable data that includes offset and > reference count tables. > > Today, image formats aggressively cache mutable data to improve performance. In > some cases, this happens before a guest even starts. When dealing with live > migration, since a file is open on two machines, the caching of meta data can > lead to data corruption. > > This patch addresses this by introducing a mechanism to invalidate any cached > mutable data a block driver may have which is then used by the live migration > code. > > NB, this still requires coherent shared storage. Addressing migration without > coherent shared storage (i.e. NFS) requires additional work. > > Signed-off-by: Anthony Liguori For the NFS case, we just need 2 different case: - outgoing: nothing to do (generic code already do an fsync()) - incoming: we need to reopen the image. For the rest, I agree. Once told that, I can implement my changes here. Later, Juan.