From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LcOBK-0001Ez-QL for qemu-devel@nongnu.org; Wed, 25 Feb 2009 13:08:30 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LcOBJ-0001Eb-TN for qemu-devel@nongnu.org; Wed, 25 Feb 2009 13:08:30 -0500 Received: from [199.232.76.173] (port=60779 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LcOBJ-0001EW-Nm for qemu-devel@nongnu.org; Wed, 25 Feb 2009 13:08:29 -0500 Received: from gecko.sbs.de ([194.138.37.40]:16599) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1LcOBJ-0002dN-1k for qemu-devel@nongnu.org; Wed, 25 Feb 2009 13:08:29 -0500 Message-ID: <49A58916.3070707@siemens.com> Date: Wed, 25 Feb 2009 19:08:22 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <49A577FD.60701@codemonkey.ws> <20090225172051.GT24969@redhat.com> In-Reply-To: <20090225172051.GT24969@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [6388] Stop VM on ENOSPC error. Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Daniel P. Berrange" , qemu-devel@nongnu.org Cc: Gleb Natapov Daniel P. Berrange wrote: > On Wed, Feb 25, 2009 at 10:55:25AM -0600, Anthony Liguori wrote: >> Anthony Liguori wrote: >>> Revision: 6388 >>> http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=6388 >>> Author: aliguori >>> Date: 2009-01-21 18:59:04 +0000 (Wed, 21 Jan 2009) >>> >>> Log Message: >>> ----------- >>> Stop VM on ENOSPC error. (Gleb Natapov) >>> >>> This version of the patch adds new option "werror" to -drive flag. >>> Possible values are: >>> >>> report - report errors to a guest as IO errors >>> ignore - continue as if nothing happened >>> stop - stop VM on any error and retry last command on resume >>> enospc - stop vm on ENOSPC error and retry last command on resume >>> all other errors are reported to a guest. >>> >>> Default is "report" to maintain current behaviour. >>> >> I recently got burnt by the default being "report". I was doing an >> installation and ran out of disk space. The guest did not do anything >> intelligible with the error reports and froze very hard (as you'd expect). >> >> Any objection to changing to default to enospc? > > From a managment POV having QEMU change its state from running to > paused behind our back is hard. You don't want to have to poll on > 'info state' to see if the VM has paused, and QEMU provides us no > async notification for this yet. So at this time, if QEMU auto-pauses > we can't notice this change, and so again it'll just appear to the > user as if it froze. > > If we get async notifications available via the monitor, then making > the default enospc is very sensible. Adding some "notify " monitor command could be a way to allow this without bothering every monitor user immediately (I'm thinking of multiple, decoupled monitor terminals now). Well, this particular error might be critical enough to let it pop up everywhere, but I guess there could be less critical ones reported this way, too. When implementing async notification, we just have to ensure that we never push it between incomplete monitor output. Jan -- Siemens AG, Corporate Technology, CT SE 2 Corporate Competence Center Embedded Linux