[libvirt] [PATCH v3 0/5] Add virDomainGetDiskErrors API

Jiri Denemark jdenemar at redhat.com
Tue Jan 31 19:26:09 UTC 2012


We already provide ways to detect when a domain has been paused as a
result of I/O error, but there was no way of getting the exact error or
even the device that experienced it.  This new API may be used for both.

Changes in version 3:
- special case errors == NULL, maxerrors == 0 returns size of the array
  the caller should pass
- explicitly document that disks with no error are not returned and that
  the caller must free disk names
- explicitly document what happens when maxerrors is lower then the
  actual number of disk errors
- maxerrors turned unsigned
- the first patch was split into two (public API and RPC)
- python binding is back

Changes in version 2:
- the API is now called virDomainGetDiskErrors
- it returns a list (allocated by caller) of disks with errors instead
  so that users don't have to call it multiple times to get all errors
- there's no python API yet since it can't be autogenerated; I'll send
  a patch for it tomorrow

Jiri Denemark (5):
  virDomainGetDiskErrors public API
  Remote protocol for virDomainGetDiskErrors
  qemu: Implement virDomainGetDiskErrors
  virsh: Implement domblkerror command
  python: Add binding for virDomainGetDiskErrors

 daemon/remote.c                 |  103 +++++++++++++++++++++++++++++++++++++++
 include/libvirt/libvirt.h.in    |   32 ++++++++++++
 python/generator.py             |    3 +-
 python/libvirt-override-api.xml |    6 ++
 python/libvirt-override.c       |   50 +++++++++++++++++++
 src/driver.h                    |    7 +++
 src/libvirt.c                   |   65 ++++++++++++++++++++++++
 src/libvirt_public.syms         |    1 +
 src/qemu/qemu_conf.h            |    1 +
 src/qemu/qemu_driver.c          |   86 ++++++++++++++++++++++++++++++++
 src/qemu/qemu_monitor.c         |   40 +++++++++++++++
 src/qemu/qemu_monitor.h         |    1 +
 src/qemu/qemu_monitor_json.c    |    8 +++
 src/qemu/qemu_monitor_text.c    |   15 ++++++
 src/remote/remote_driver.c      |   77 +++++++++++++++++++++++++++++
 src/remote/remote_protocol.x    |   23 ++++++++-
 src/remote_protocol-structs     |   17 ++++++
 tools/virsh.c                   |   78 +++++++++++++++++++++++++++++
 tools/virsh.pod                 |    7 +++
 19 files changed, 618 insertions(+), 2 deletions(-)

-- 
1.7.8.4




More information about the libvir-list mailing list