From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KdSh3-00029s-Hy for qemu-devel@nongnu.org; Wed, 10 Sep 2008 12:37:25 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KdSh1-00029A-Le for qemu-devel@nongnu.org; Wed, 10 Sep 2008 12:37:25 -0400 Received: from [199.232.76.173] (port=41413 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KdSh1-000292-CH for qemu-devel@nongnu.org; Wed, 10 Sep 2008 12:37:23 -0400 Received: from mail.codesourcery.com ([65.74.133.4]:39191) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KdSh0-0000CL-PV for qemu-devel@nongnu.org; Wed, 10 Sep 2008 12:37:23 -0400 From: Paul Brook Subject: Re: [Qemu-devel] [PATCH 3/10] Add bdrv_flush_all() Date: Wed, 10 Sep 2008 17:37:17 +0100 References: <1220989802-13706-1-git-send-email-aliguori@us.ibm.com> <5d6222a80809100746kd4bcf21h5c3fd9afbec1067d@mail.gmail.com> <48C7E579.5040702@us.ibm.com> In-Reply-To: <48C7E579.5040702@us.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200809101737.18560.paul@codesourcery.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Chris Wright , Glauber Costa , Anthony Liguori , kvm@vger.kernel.org, Uri Lublin > I'm actually liking bdrv_flush_all() less and less. If there are any > outstanding IO requests, it will increase the down time associated with > live migration. I think we definitely need to add a live save handler > that waits until there are no outstanding IO requests to converge. I'm > concerned though that it's not totally unreasonable to expect a guest to > always have an IO request in flight. That leads me to think that maybe > we should be cancelling outstanding requests, and somehow saving their > state? That's not possible with the current code because the IO callbacks (particularly when you start involving the SCSI layer) are generated dynamically. Paul