Re: [PATCH v3 2/6] qemuProcessHandleBlockJob: Take status into account

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

 



On Fri, Feb 13, 2015 at 16:24:29 +0100, Michal Privoznik wrote:
> Upon BLOCK_JOB_COMPLETED event delivery, we check if the job has
> completed (in qemuMonitorJSONHandleBlockJobImpl()). For better image,
> the event looks something like this:
> 
> "timestamp": {"seconds": 1423582694, "microseconds": 372666}, "event":
> "BLOCK_JOB_COMPLETED", "data": {"device": "drive-virtio-disk0", "len":
> 8412790784, "offset": 409993216, "speed": 8796093022207, "type":
> "mirror", "error": "No space left on device"}}
> 
> If "len" does not equal "offset" it's considered an error, and we can
> clearly see "error" field filled in. However, later in the event
> processing this case was handled no differently to case of job being
> aborted via separate API. It's time that we start differentiate these
> two because of the future work.
> 
> Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
> ---
>  src/qemu/qemu_process.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
> index f30acbb..9cfc0f3 100644
> --- a/src/qemu/qemu_process.c
> +++ b/src/qemu/qemu_process.c
> @@ -1103,7 +1103,8 @@ qemuProcessHandleBlockJob(qemuMonitorPtr mon ATTRIBUTE_UNUSED,
>          case VIR_DOMAIN_BLOCK_JOB_CANCELED:
>              virStorageSourceFree(disk->mirror);
>              disk->mirror = NULL;
> -            disk->mirrorState = VIR_DOMAIN_DISK_MIRROR_STATE_NONE;
> +            disk->mirrorState = status == VIR_DOMAIN_BLOCK_JOB_FAILED ?
> +                VIR_DOMAIN_DISK_MIRROR_STATE_ABORT : VIR_DOMAIN_DISK_MIRROR_STATE_NONE;
>              disk->mirrorJob = VIR_DOMAIN_BLOCK_JOB_TYPE_UNKNOWN;
>              save = true;
>              break;

ACK

Jirka

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]