[libvirt] [PATCH 3/9] nodeinfo: Add sysfs_prefix to nodeGetPresentCPUBitmap

John Ferlan jferlan at redhat.com
Wed Jul 8 00:26:17 UTC 2015


Add the sysfs_prefix argument to the call to allow for setting the
path for tests to something other than SYSFS_SYSTEM_PATH.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/nodeinfo.c       | 7 ++++---
 src/nodeinfo.h       | 2 +-
 src/util/vircgroup.c | 2 +-
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/nodeinfo.c b/src/nodeinfo.c
index 409f922..34de720 100644
--- a/src/nodeinfo.c
+++ b/src/nodeinfo.c
@@ -1249,19 +1249,20 @@ nodeGetCPUCount(const char *sysfs_prefix ATTRIBUTE_UNUSED)
 }
 
 virBitmapPtr
-nodeGetPresentCPUBitmap(void)
+nodeGetPresentCPUBitmap(const char *sysfs_prefix)
 {
     int max_present;
 #ifdef __linux__
     char *present_path = NULL;
     virBitmapPtr bitmap = NULL;
 #endif
+    const char *prefix = sysfs_prefix ? sysfs_prefix : SYSFS_SYSTEM_PATH;
 
-    if ((max_present = nodeGetCPUCount(NULL)) < 0)
+    if ((max_present = nodeGetCPUCount(prefix)) < 0)
         return NULL;
 
 #ifdef __linux__
-    if (!(present_path = linuxGetCPUPresentPath(NULL)))
+    if (!(present_path = linuxGetCPUPresentPath(prefix)))
         return NULL;
     if (virFileExists(present_path))
         bitmap = linuxParseCPUmap(max_present, present_path);
diff --git a/src/nodeinfo.h b/src/nodeinfo.h
index 4f9699e..3ef206b 100644
--- a/src/nodeinfo.h
+++ b/src/nodeinfo.h
@@ -43,7 +43,7 @@ int nodeGetCellsFreeMemory(unsigned long long *freeMems,
 int nodeGetMemory(unsigned long long *mem,
                   unsigned long long *freeMem);
 
-virBitmapPtr nodeGetPresentCPUBitmap(void);
+virBitmapPtr nodeGetPresentCPUBitmap(const char *sysfs_prefix);
 virBitmapPtr nodeGetCPUBitmap(int *max_id);
 int nodeGetCPUCount(const char *sysfs_prefix);
 
diff --git a/src/util/vircgroup.c b/src/util/vircgroup.c
index cbe0234..0ef2d29 100644
--- a/src/util/vircgroup.c
+++ b/src/util/vircgroup.c
@@ -3043,7 +3043,7 @@ virCgroupGetPercpuStats(virCgroupPtr group,
     }
 
     /* To parse account file, we need to know how many cpus are present.  */
-    if (!(cpumap = nodeGetPresentCPUBitmap()))
+    if (!(cpumap = nodeGetPresentCPUBitmap(NULL)))
         return rv;
 
     total_cpus = virBitmapSize(cpumap);
-- 
2.1.0




More information about the libvir-list mailing list