qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] QMP: RFC: I/O error info & query-stop-reason


From: Luiz Capitulino
Subject: Re: [Qemu-devel] QMP: RFC: I/O error info & query-stop-reason
Date: Tue, 7 Jun 2011 14:43:14 -0300

On Tue, 07 Jun 2011 11:32:14 -0500
Anthony Liguori <address@hidden> wrote:

> On 06/07/2011 10:54 AM, Luiz Capitulino wrote:
> > On Tue, 07 Jun 2011 10:39:45 -0500
> > Anthony Liguori<address@hidden>  wrote:
> >
> >> On 06/07/2011 09:46 AM, Luiz Capitulino wrote:
> >>> On Mon, 06 Jun 2011 08:08:51 -0500
> >>> Anthony Liguori<address@hidden>   wrote:
> >>>
> >>>> 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.
> >>>
> >>> Is it better if we add a new enum to query-block? Like the "io-error" key 
> >>> we
> >>> have talked about earlier? Like:
> >>>
> >>>    "io-error": "no space"
> >>
> >> 1) enums have to follow some rules.  One obvious rule would be there
> >> can't be spaces in the enum value.
> >>
> >> 2) Do we have an defined enum values besides no-space?  If not, let's
> >> not artificially add an enum.
> >>
> >>>
> >>> We could have "no space", "low level" (that's how the man page defines 
> >>> EIO) and
> >>> "unknown".
> >>
> >> 3) what's the difference between "no space" and "low level"?
> >
> > The latter means the device doesn't have enough space to write more data,
> > the former is I/O I guess it's more device specific.
> 
> Sorry, I meant to ask, what's the difference between "low level" and 
> "unknown".

"low level" is EIO, "unknown" is everything else (EINVAL, EPIPE, ...).

> 
> Regards,
> 
> Anthony Liguori
> 
> >
> > What's your suggestion?
> >
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]