[PATCH 07/13] libxl: move libxlDoNodeGetInfo to libxl_conf

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Move libxlDoNodeGetInfo from libxl_driver to libxl_conf
for use by other libxl modules.  For consistency, rename to
libxlDriverNodeGetInfo.

Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxx>
---
 src/libxl/libxl_conf.c   | 36 ++++++++++++++++++++++++++++++++++++
 src/libxl/libxl_conf.h   |  4 ++++
 src/libxl/libxl_driver.c | 41 ++---------------------------------------
 3 files changed, 42 insertions(+), 39 deletions(-)

diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index 13eddd1..199e3e9 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -1144,6 +1144,42 @@ libxlDriverConfigGet(libxlDriverPrivatePtr driver)
     return cfg;
 }
 
+int
+libxlDriverNodeGetInfo(libxlDriverPrivatePtr driver, virNodeInfoPtr info)
+{
+    libxl_physinfo phy_info;
+    virArch hostarch = virArchFromHost();
+    libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver);
+    int ret = -1;
+
+    if (libxl_get_physinfo(cfg->ctx, &phy_info)) {
+        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                       _("libxl_get_physinfo_info failed"));
+        goto cleanup;
+    }
+
+    if (virStrcpyStatic(info->model, virArchToString(hostarch)) == NULL) {
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("machine type %s too big for destination"),
+                       virArchToString(hostarch));
+        goto cleanup;
+    }
+
+    info->memory = phy_info.total_pages * (cfg->verInfo->pagesize / 1024);
+    info->cpus = phy_info.nr_cpus;
+    info->nodes = phy_info.nr_nodes;
+    info->cores = phy_info.cores_per_socket;
+    info->threads = phy_info.threads_per_core;
+    info->sockets = 1;
+    info->mhz = phy_info.cpu_khz / 1000;
+
+    ret = 0;
+
+cleanup:
+    virObjectUnref(cfg);
+    return ret;
+}
+
 virCapsPtr
 libxlMakeCapabilities(libxl_ctx *ctx)
 {
diff --git a/src/libxl/libxl_conf.h b/src/libxl/libxl_conf.h
index f089a92..6584933 100644
--- a/src/libxl/libxl_conf.h
+++ b/src/libxl/libxl_conf.h
@@ -136,6 +136,10 @@ libxlDriverConfigNew(void);
 libxlDriverConfigPtr
 libxlDriverConfigGet(libxlDriverPrivatePtr driver);
 
+int
+libxlDriverNodeGetInfo(libxlDriverPrivatePtr driver,
+                       virNodeInfoPtr info);
+
 virCapsPtr
 libxlMakeCapabilities(libxl_ctx *ctx);
 
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 663577f..665c740 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -125,43 +125,6 @@ cleanup:
     return ret;
 }
 
-static int
-libxlDoNodeGetInfo(libxlDriverPrivatePtr driver, virNodeInfoPtr info)
-{
-    libxl_physinfo phy_info;
-    virArch hostarch = virArchFromHost();
-    libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver);
-    int ret = -1;
-
-    if (libxl_get_physinfo(cfg->ctx, &phy_info)) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("libxl_get_physinfo_info failed"));
-        goto cleanup;
-    }
-
-    if (virStrcpyStatic(info->model, virArchToString(hostarch)) == NULL) {
-        virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("machine type %s too big for destination"),
-                       virArchToString(hostarch));
-        goto cleanup;
-    }
-
-    info->memory = phy_info.total_pages * (cfg->verInfo->pagesize / 1024);
-    info->cpus = phy_info.nr_cpus;
-    info->nodes = phy_info.nr_nodes;
-    info->cores = phy_info.cores_per_socket;
-    info->threads = phy_info.threads_per_core;
-    info->sockets = 1;
-    info->mhz = phy_info.cpu_khz / 1000;
-
-    ret = 0;
-
-cleanup:
-    virObjectUnref(cfg);
-    return ret;
-}
-
-
 /*
  * Handle previously registered event notification from libxenlight.
  *
@@ -355,7 +318,7 @@ libxlDomainSetVcpuAffinities(libxlDriverPrivatePtr driver, virDomainObjPtr vm)
     size_t i;
     int ret = -1;
 
-    if (libxlDoNodeGetInfo(driver, &nodeinfo) < 0)
+    if (libxlDriverNodeGetInfo(driver, &nodeinfo) < 0)
         goto cleanup;
 
     cpumaplen = VIR_CPU_MAPLEN(VIR_NODEINFO_MAXCPUS(nodeinfo));
@@ -1032,7 +995,7 @@ libxlNodeGetInfo(virConnectPtr conn, virNodeInfoPtr info)
     if (virNodeGetInfoEnsureACL(conn) < 0)
         return -1;
 
-    return libxlDoNodeGetInfo(conn->privateData, info);
+    return libxlDriverNodeGetInfo(conn->privateData, info);
 }
 
 static char *
-- 
1.8.1.4

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




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]