From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:36074) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QSUv3-0004E5-9b for qemu-devel@nongnu.org; Fri, 03 Jun 2011 10:00:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QSUuz-00022i-9e for qemu-devel@nongnu.org; Fri, 03 Jun 2011 10:00:08 -0400 Received: from david.siemens.de ([192.35.17.14]:25614) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QSUuy-0001zM-J6 for qemu-devel@nongnu.org; Fri, 03 Jun 2011 10:00:05 -0400 Message-ID: <4DE8E8DF.90009@siemens.com> Date: Fri, 03 Jun 2011 15:59:59 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <20110601181255.077fb5fd@doriath> <4DE6B087.6010708@codemonkey.ws> <20110602090632.GB14571@redhat.com> <4DE78B53.1010201@codemonkey.ws> <20110602132405.GJ514380@orkuz.home> <4DE797F6.2060004@codemonkey.ws> <20110602150124.0b3c187f@doriath> <20110603092602.GA32642@redhat.com> <4DE8D6EC.1010307@codemonkey.ws> <20110603125751.GD32642@redhat.com> <4DE8E120.9020904@codemonkey.ws> <4DE8E47A.5040406@siemens.com> <4DE8E6E1.4000909@codemonkey.ws> In-Reply-To: <4DE8E6E1.4000909@codemonkey.ws> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] QMP: RFC: I/O error info & query-stop-reason List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Kevin Wolf , Stefan Hajnoczi , "qemu-devel@nongnu.org" , Markus Armbruster , Jiri Denemark , Luiz Capitulino On 2011-06-03 15:51, Anthony Liguori wrote: > On 06/03/2011 08:41 AM, Jan Kiszka wrote: >> On 2011-06-03 15:26, Anthony Liguori wrote: >>> I think what we're getting at is the need for an enumeration. So let's >>> introduce one. Here's what I propose: >>> >>> SQMP >>> query-status >>> ------------ >>> >>> Return a json-object with the following information: >>> >>> - "running": true if the VM is running, or false if it is paused >>> (json-bool) >>> - "singlestep": true if the VM is in single step mode, >>> false otherwise (json-bool) >>> - "status": one of the following values (json-string) (optional) >>> "prelaunch" - QEMU was started with -S and guest has not started >>> "running" - guest is actively running >>> "singlestep" - guest is running in single step mode >> >> "singlestep" is just a subset of "debug" stops. Better use the latter. >> >>> "paused" - guest has been paused via the 'stop' command >>> "postmigrate" - guest is paused following a successful 'migrate' >>> "shutdown" - guest is shut down (and -no-shutdown is in use) >>> "io-error" - the last IOP has failed and the device is configured >>> to pause on I/O errors >>> "watchdog-error" - the watchdog action is configured to pause and >>> has been triggered >> >> And "panic" or "internal-error". > > Can you add the request help spec text too? Is "internal-error" a KVM > emulation error? If so, I'd rather make it "kvm-emulation-error". It would currently map on VMSTOP_PANIC, which is KVM_EXIT_UNKNOWN, KVM_EXIT_INTERNAL_ERROR or something arch-specific. Moreover, people may put TCG errors or whatever under this stop reason in the future. If we wanted "kvm-emulation-error", we would have to introduce VMSTOP_KVM_EMULATION_ERROR. But I think internal error is sufficiently precise for this purpose: "Fatal internal error that prevents further guest execution." Jan -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux