On 11/09/2011 01:32 PM, Lei Li wrote:
This patch add new pulic API virDomainSetBlockIoTune and
virDomainGetBlockIoTune.


Signed-off-by: Zhi Yong Wu<wu...@linux.vnet.ibm.com>
Signed-off-by: Lei Li<li...@linux.vnet.ibm.com>
---
  include/libvirt/libvirt.h.in |   26 +++++++++
  src/driver.h                 |   19 +++++++
  src/libvirt.c                |  115 ++++++++++++++++++++++++++++++++++++++++++
  src/libvirt_public.syms      |    2 +
  4 files changed, 162 insertions(+), 0 deletions(-)

diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
index aa320b6..a79c35e 100644
--- a/include/libvirt/libvirt.h.in
+++ b/include/libvirt/libvirt.h.in
@@ -1640,6 +1640,32 @@ int    virDomainBlockJobSetSpeed(virDomainPtr dom, const 
char *path,
  int           virDomainBlockPull(virDomainPtr dom, const char *path,
                                   unsigned long bandwidth, unsigned int flags);

+/*
+ * Block I/O throttling support
+ */
+
+typedef struct _virDomainBlockIoTuneInfo virDomainBlockIoTuneInfo;
+struct _virDomainBlockIoTuneInfo {
+    unsigned long long total_bytes_sec;
+    unsigned long long read_bytes_sec;
+    unsigned long long write_bytes_sec;
+    unsigned long long total_iops_sec;
+    unsigned long long read_iops_sec;
+    unsigned long long write_iops_sec;
+};
+typedef virDomainBlockIoTuneInfo *virDomainBlockIoTuneInfoPtr;

This is not extensible. We've already learned the hard way that this MUST use virTypedParameter to make future additions painless, rather than hard-coding a particular structure.

--
Eric Blake   ebl...@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

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

Reply via email to