[libvirt] [PATCH 2/8] schedinfo: Define the internal API

Osier Yang jyang at redhat.com
Fri Apr 15 07:18:44 UTC 2011


---
 src/driver.h               |    8 ++++++++
 src/esx/esx_driver.c       |    1 +
 src/libxl/libxl_driver.c   |    1 +
 src/lxc/lxc_driver.c       |    1 +
 src/openvz/openvz_driver.c |    1 +
 src/phyp/phyp_driver.c     |    1 +
 src/qemu/qemu_driver.c     |    1 +
 src/remote/remote_driver.c |    6 ++++--
 src/test/test_driver.c     |    1 +
 src/uml/uml_driver.c       |    1 +
 src/vbox/vbox_tmpl.c       |    1 +
 src/vmware/vmware_driver.c |    1 +
 src/xen/xen_driver.c       |    1 +
 src/xenapi/xenapi_driver.c |    1 +
 14 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/src/driver.h b/src/driver.h
index e5f91ca..55ffab2 100644
--- a/src/driver.h
+++ b/src/driver.h
@@ -276,6 +276,13 @@ typedef int
                                          int nparams);
 
 typedef int
+        (*virDrvDomainSetSchedulerParametersFlags)
+                                         (virDomainPtr domain,
+                                         virSchedParameterPtr params,
+                                         int nparams,
+                                         unsigned int flags);
+
+typedef int
     (*virDrvDomainBlockStats)
                     (virDomainPtr domain,
                      const char *path,
@@ -593,6 +600,7 @@ struct _virDriver {
     virDrvDomainGetSchedulerType	domainGetSchedulerType;
     virDrvDomainGetSchedulerParameters domainGetSchedulerParameters;
     virDrvDomainSetSchedulerParameters domainSetSchedulerParameters;
+    virDrvDomainSetSchedulerParametersFlags	domainSetSchedulerParametersFlags;
     virDrvDomainMigratePrepare	domainMigratePrepare;
     virDrvDomainMigratePerform	domainMigratePerform;
     virDrvDomainMigrateFinish	domainMigrateFinish;
diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c
index deda372..5c7bd80 100644
--- a/src/esx/esx_driver.c
+++ b/src/esx/esx_driver.c
@@ -4629,6 +4629,7 @@ static virDriver esxDriver = {
     esxDomainGetSchedulerType,       /* domainGetSchedulerType */
     esxDomainGetSchedulerParameters, /* domainGetSchedulerParameters */
     esxDomainSetSchedulerParameters, /* domainSetSchedulerParameters */
+    NULL,                            /* domainSetSchedulerParametersFlags */
     esxDomainMigratePrepare,         /* domainMigratePrepare */
     esxDomainMigratePerform,         /* domainMigratePerform */
     esxDomainMigrateFinish,          /* domainMigrateFinish */
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 3040914..ef3ea46 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -2617,6 +2617,7 @@ static virDriver libxlDriver = {
     libxlDomainGetSchedulerType,/* domainGetSchedulerType */
     libxlDomainGetSchedulerParameters,/* domainGetSchedulerParameters */
     libxlDomainSetSchedulerParameters,/* domainSetSchedulerParameters */
+    NULL                        /* domainSetSchedulerParametersFlags */
     NULL,                       /* domainMigratePrepare */
     NULL,                       /* domainMigratePerform */
     NULL,                       /* domainMigrateFinish */
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index e905302..72c0a0a 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -2860,6 +2860,7 @@ static virDriver lxcDriver = {
     lxcGetSchedulerType, /* domainGetSchedulerType */
     lxcGetSchedulerParameters, /* domainGetSchedulerParameters */
     lxcSetSchedulerParameters, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
index 4af28e9..d3d3365 100644
--- a/src/openvz/openvz_driver.c
+++ b/src/openvz/openvz_driver.c
@@ -1621,6 +1621,7 @@ static virDriver openvzDriver = {
     NULL, /* domainGetSchedulerType */
     NULL, /* domainGetSchedulerParameters */
     NULL, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index ddbc103..dd90fca 100644
--- a/src/phyp/phyp_driver.c
+++ b/src/phyp/phyp_driver.c
@@ -4026,6 +4026,7 @@ static virDriver phypDriver = {
     NULL,                       /* domainGetSchedulerType */
     NULL,                       /* domainGetSchedulerParameters */
     NULL,                       /* domainSetSchedulerParameters */
+    NULL,                       /* domainSetSchedulerParametersFlags */
     NULL,                       /* domainMigratePrepare */
     NULL,                       /* domainMigratePerform */
     NULL,                       /* domainMigrateFinish */
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 04a5f65..f06dcea 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -6924,6 +6924,7 @@ static virDriver qemuDriver = {
     qemuGetSchedulerType, /* domainGetSchedulerType */
     qemuGetSchedulerParameters, /* domainGetSchedulerParameters */
     qemuSetSchedulerParameters, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare (v1) */
     qemudDomainMigratePerform, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 9310ddf..7fe57d0 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -1223,7 +1223,7 @@ initialize_gnutls(char *pkipath, int flags)
             goto out_of_memory;
 
         /* Use default location as long as one of CA certificate,
-         * client key, and client certificate can not be found in
+         * client key, and client certificate cannot be found in
          * $HOME/.pki/libvirt, we don't want to make user confused
          * with one file is here, the other is there.
          */
@@ -10672,8 +10672,9 @@ remoteIOEventLoop(virConnectPtr conn,
                  */
                 VIR_DEBUG("Waking up sleep %d %p %p", tmp->proc_nr, tmp, priv->waitDispatch);
                 virCondSignal(&tmp->cond);
+            } else {
+                prev = tmp;
             }
-            prev = tmp;
             tmp = tmp->next;
         }
 
@@ -11254,6 +11255,7 @@ static virDriver remote_driver = {
     remoteDomainGetSchedulerType, /* domainGetSchedulerType */
     remoteDomainGetSchedulerParameters, /* domainGetSchedulerParameters */
     remoteDomainSetSchedulerParameters, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     remoteDomainMigratePrepare, /* domainMigratePrepare */
     remoteDomainMigratePerform, /* domainMigratePerform */
     remoteDomainMigrateFinish, /* domainMigrateFinish */
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
index 17f5ad9..42ec89c 100644
--- a/src/test/test_driver.c
+++ b/src/test/test_driver.c
@@ -5401,6 +5401,7 @@ static virDriver testDriver = {
     testDomainGetSchedulerType, /* domainGetSchedulerType */
     testDomainGetSchedulerParams, /* domainGetSchedulerParameters */
     testDomainSetSchedulerParams, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 33849a0..852e066 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -2207,6 +2207,7 @@ static virDriver umlDriver = {
     NULL, /* domainGetSchedulerType */
     NULL, /* domainGetSchedulerParameters */
     NULL, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c
index 0fbfba5..0d9d17e 100644
--- a/src/vbox/vbox_tmpl.c
+++ b/src/vbox/vbox_tmpl.c
@@ -8591,6 +8591,7 @@ virDriver NAME(Driver) = {
     NULL, /* domainGetSchedulerType */
     NULL, /* domainGetSchedulerParameters */
     NULL, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
diff --git a/src/vmware/vmware_driver.c b/src/vmware/vmware_driver.c
index b5e416b..1db1b0d 100644
--- a/src/vmware/vmware_driver.c
+++ b/src/vmware/vmware_driver.c
@@ -961,6 +961,7 @@ static virDriver vmwareDriver = {
     NULL,                       /* domainGetSchedulerType */
     NULL,                       /* domainGetSchedulerParameters */
     NULL,                       /* domainSetSchedulerParameters */
+    NULL,                       /* domainSetSchedulerParametersFlags */
     NULL,                       /* domainMigratePrepare */
     NULL,                       /* domainMigratePerform */
     NULL,                       /* domainMigrateFinish */
diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
index 9f47722..48a777f 100644
--- a/src/xen/xen_driver.c
+++ b/src/xen/xen_driver.c
@@ -2095,6 +2095,7 @@ static virDriver xenUnifiedDriver = {
     xenUnifiedDomainGetSchedulerType, /* domainGetSchedulerType */
     xenUnifiedDomainGetSchedulerParameters, /* domainGetSchedulerParameters */
     xenUnifiedDomainSetSchedulerParameters, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     xenUnifiedDomainMigratePrepare, /* domainMigratePrepare */
     xenUnifiedDomainMigratePerform, /* domainMigratePerform */
     xenUnifiedDomainMigrateFinish, /* domainMigrateFinish */
diff --git a/src/xenapi/xenapi_driver.c b/src/xenapi/xenapi_driver.c
index 60b23c7..db21c1a 100644
--- a/src/xenapi/xenapi_driver.c
+++ b/src/xenapi/xenapi_driver.c
@@ -1843,6 +1843,7 @@ static virDriver xenapiDriver = {
     xenapiDomainGetSchedulerType, /* domainGetSchedulerType */
     NULL, /* domainGetSchedulerParameters */
     NULL, /* domainSetSchedulerParameters */
+    NULL, /* domainSetSchedulerParametersFlags */
     NULL, /* domainMigratePrepare */
     NULL, /* domainMigratePerform */
     NULL, /* domainMigrateFinish */
-- 
1.7.4




More information about the libvir-list mailing list