On Thu, May 24, 2012 at 03:41:29PM +0200, Paolo Bonzini wrote: > changes from v1: > - added per-job iostatus > - added description of persistent dirty bitmap > > The same content is also at > http://wiki.qemu.org/Features/LiveBlockMigration/1.2 > > > QMP changes for error handling > ============================== > > * query-block-jobs: BlockJobInfo gets two new fields, paused and > io-status. The job-specific iostatus is completely separate from the > block device iostatus. > > > * block-stream: I would still like to add on_error to the existing > block-stream command, if only to ease unit testing. Concerns about the > stability of the API can be handled by adding introspection (exporting > the schema), which is not hard to do. The new option is an enum with > the following possible values: > > 'report': The behavior is the same as in 1.1. An I/O error 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 (which can be > examined with query-block-jobs) is updated. > > 'enospc': Behaves as 'stop' for ENOSPC errors, 'report' for others.
'stop' and 'enospc' must raise a QMP event so the user is notified when the job is paused. Are the details on this missing from this draft? Stefan