From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45165 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ouk1D-0007Tn-AX for qemu-devel@nongnu.org; Sun, 12 Sep 2010 06:42:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Ouk1C-0004C0-72 for qemu-devel@nongnu.org; Sun, 12 Sep 2010 06:42:43 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36734) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ouk1B-0004Bu-Vm for qemu-devel@nongnu.org; Sun, 12 Sep 2010 06:42:42 -0400 Message-ID: <4C8CAE9C.4030504@redhat.com> Date: Sun, 12 Sep 2010 12:42:36 +0200 From: Avi Kivity MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH 3/3] disk: don't read from disk until the guest starts References: <1284213896-12705-1-git-send-email-aliguori@us.ibm.com> <1284213896-12705-4-git-send-email-aliguori@us.ibm.com> In-Reply-To: <1284213896-12705-4-git-send-email-aliguori@us.ibm.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , Juan Quintela , qemu-devel@nongnu.org, Stefan Hajnoczi On 09/11/2010 05:04 PM, Anthony Liguori wrote: > This fixes a couple nasty problems relating to live migration. > > 1) When dealing with shared storage with weak coherence (i.e. NFS), even if > we re-read, we may end up with undesired caching. By delaying any reads > until we absolutely have to, we decrease the likelihood of any undesirable > caching. > > 2) When dealing with copy-on-read, the local storage acts as a cache. We need > to make sure to avoid any reads to avoid polluting the local cache. > > + > static void ide_identify(IDEState *s) > { > uint16_t *p; > @@ -105,6 +132,8 @@ static void ide_identify(IDEState *s) > return; > } > > + guess_geometry(s); > + This can cause a disk read, no? Shouldn't it be made asynchronous? Or just move it to just before the guest starts? -- error compiling committee.c: too many arguments to function