On 09/26/2012 09:56 AM, Paolo Bonzini wrote: > The following behaviors are possible: > > 'report': The behavior is the same as in 1.1. An I/O error, > respectively during a read or a write, will complete the job immediately > with an error code. > > 'ignore': An I/O error, respectively during a read or a write, will be > ignored. For streaming, the job will complete with an error and the > backing file will be left in place. For mirroring, the sector will be > marked again as dirty and re-examined later. > > 'stop': The job will be paused and the job iostatus will be set to > failed or nospace, while the VM will keep running. This can only be > specified if the block device has rerror=stop and werror=stop or enospc. > > 'enospc': Behaves as 'stop' for ENOSPC errors, 'report' for others. >
> +Emitted when a block job encounters an error. > + > +Data: > + > +- "device": device name (json-string) > +- "operation": I/O operation (json-string, "read" or "write") For symmetry with BLOCK_JOB_{CANCELLED,COMPLETED}, you also need: - "type": Job type ("stream" for image streaming, json-string) Libvirt would like to key off of the 'type' field for all three events. Besides, if management issues several block commands in a row, and only then starts processing the pending event queue, it would be nice to know whether the error stemmed from a 'stream', 'mirror', or (when combined with Jeff's patches) 'commit' job. > +++ b/qapi-schema.json > @@ -1127,11 +1127,14 @@ > # > # @speed: the rate limit, bytes per second > # > +# @io-status: the status of the job (since 1.2) 1.3 -- Eric Blake ebl...@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature