From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:45487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QS7dm-0007zL-VF for qemu-devel@nongnu.org; Thu, 02 Jun 2011 09:08:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QS7dk-0002rF-0a for qemu-devel@nongnu.org; Thu, 02 Jun 2011 09:08:46 -0400 Received: from mail-pz0-f45.google.com ([209.85.210.45]:61485) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QS7dj-0002qj-Fw for qemu-devel@nongnu.org; Thu, 02 Jun 2011 09:08:43 -0400 Received: by pzk30 with SMTP id 30so418104pzk.4 for ; Thu, 02 Jun 2011 06:08:42 -0700 (PDT) Message-ID: <4DE78B53.1010201@codemonkey.ws> Date: Thu, 02 Jun 2011 08:08:35 -0500 From: Anthony Liguori MIME-Version: 1.0 References: <20110601181255.077fb5fd@doriath> <4DE6B087.6010708@codemonkey.ws> <20110602090632.GB14571@redhat.com> In-Reply-To: <20110602090632.GB14571@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed 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: "Daniel P. Berrange" Cc: Kevin Wolf , Stefan Hajnoczi , qemu-devel@nongnu.org, Luiz Capitulino , jdenemar@redhat.com, Markus Armbruster On 06/02/2011 04:06 AM, Daniel P. Berrange wrote: > On Wed, Jun 01, 2011 at 04:35:03PM -0500, Anthony Liguori wrote: >>> "timestamp": { "seconds": 1265044230, "microseconds": 450486 } } >>> >>> Valid error reasons could be: "enospc", "eio", etc. >> >> No etc :-) Error reasons should we be well known and well documented. >> >>> B. query-stop-reason >>> -------------------- >>> >>> I also have a simple solution for item 2. The vm_stop() accepts a reason >>> argument, so we could store it somewhere and return it as a string, like: >>> >>> -> { "execute": "query-stop-reason" } >>> <- { "return": { "reason": "user" } } >>> >>> Valid reasons could be: "user", "debug", "shutdown", "diskfull" (hey, >>> this should be "ioerror", no?), "watchdog", "panic", "savevm", "loadvm", >>> "migrate". >>> >>> Also note that we have a STOP event. It should be extended with the >>> stop reason too, for completeness. >> >> >> Can we just extend query-block? > > Primarily we want 'query-stop-reason' to tell us what caused the VM > CPUs to stop. If that reason was 'ioerror', then 'query-block' could > be used to find out which particular block device(s) caused the IO > error to occurr& get the "reason" that was in the BLOCK_IO_ERROR > event. My concern is that we're over abstracting here. We're not going to add additional stop reasons in the future. Maybe just add an 'io-error': True to query-state. Regards, Anthony Liguori > > Regards, > Daniel