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

Anthony Liguori anthony at codemonkey.ws
Thu Jun 2 20:55:44 UTC 2011


On 06/02/2011 03:13 PM, Eric Blake wrote:
> On 06/02/2011 02:03 PM, Anthony Liguori wrote:
>>>>>>>>> { "event": "BLOCK_IO_ERROR",
>>>>>>>>>         "data": { "device": "ide0-hd1",
>>>>>>>>>                   "operation": "write",
>>>>>>>>>                   "action": "stop",
>>>>>>>>>                   "reason": "enospc", }
>>>>>>>>
>
>>>>>>> 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 }
>
> The idea for an event with details certainly has merit.

In an ideal would, would would just embed the BlockDeviceInfo structure 
in the event and call it a day.  In a less than ideal world, I think 
it's better to make a call to query-block after having received the 
BLOCK_IO_ERROR event.

>
>>>>>>
>>>>>> Why would we ever have "no permission"?
>
> SELinux denial, perhaps?

Maybe, but that would take a considerable amount of magic to make happen 
in practice.  Really only sounds plausible as an sVirt bug.  I think you 
could only make this happen if you you doing dynamic labelling.

Regards,

Anthony Liguori

>
>>
>>> Maybe libvirt guys could provide more input wrt the error reason usage.
>>> If we don't have valid use cases for other errors, then I'll agree that
>>> providing only "no space" is enough.
>>
>> Definitely!  Adding libvirt to the CC to help encourage their input.
>
> We could always start with just one reason "no space", and add more
> later if and when we come up for use cases.
>




More information about the libvir-list mailing list