From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:43986) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QTZY9-0007mW-18 for qemu-devel@nongnu.org; Mon, 06 Jun 2011 09:08:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QTZY7-0003zt-D1 for qemu-devel@nongnu.org; Mon, 06 Jun 2011 09:08:56 -0400 Received: from mail-gw0-f45.google.com ([74.125.83.45]:53548) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QTZY6-0003zj-SX for qemu-devel@nongnu.org; Mon, 06 Jun 2011 09:08:54 -0400 Received: by gwb19 with SMTP id 19so1739292gwb.4 for ; Mon, 06 Jun 2011 06:08:53 -0700 (PDT) Message-ID: <4DECD163.9030704@codemonkey.ws> Date: Mon, 06 Jun 2011 08:08:51 -0500 From: Anthony Liguori MIME-Version: 1.0 References: <20110601181255.077fb5fd@doriath> <4DE6B087.6010708@codemonkey.ws> <20110602145730.4c80d668@doriath> <4DE7CFA4.9040300@codemonkey.ws> <20110602150900.7d2657fb@doriath> <4DEC9D07.5080409@redhat.com> In-Reply-To: <4DEC9D07.5080409@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; 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: Kevin Wolf Cc: Stefan Hajnoczi , jdenemar@redhat.com, qemu-devel@nongnu.org, Markus Armbruster , Luiz Capitulino On 06/06/2011 04:25 AM, Kevin Wolf wrote: > Am 02.06.2011 20:09, schrieb Luiz Capitulino: >>>> I'm ok with either way. But in case you meant the second one, I guess >>>> we should make "reason" a dictionary so that we can group related >>>> information when we extend the field, for example: >>>> >>>> "reason": { "no space": false, "no permission": true } > > Splitting up enums into a number of booleans looks like a bad idea to > me. It makes things more verbose than they should be, and even worse, it > implies that more than one field could be true. I agree. What I had suggested was to not have a reason at all. > > If this new schema thing doesn't support proper enums, that's something > that should be changed. It does BTW. >>> >>> Why would we ever have "no permission"? >> >> It's an I/O error. I have a report from a developer who was getting >> the BLOCK_IO_ERROR event and had to debug qemu to know the error cause, >> it turned out to be no permission. > > And I want to add that it's a PITA to handle bug report when the only > message you get from qemu is "something went wrong". Sorry, that's not > useful at all. I want to see the real error reason (and at least for > debugging this means, I want to see the errno value/string). > > Finding out that it was -EACCES in fact cost me (and QA who ran into the > problem) much more time than it should have. It's simply too much that > you need to attach gdb to find out what really happened. You want a log file and you want libvirt to actually let QEMU write to a log file. Since we already have trace points, could we have a white list of trace points that are written to a log file by default? QMP is a stable interface that we have to maintain forever. We can write whatever we want to a log file and change what gets written at will. Regards, Anthony Liguori > Kevin >