diff --git a/src/nodeinfo.c b/src/nodeinfo.c index 64442563f2be1d3882b94b459c92013ec62e6c31..eb7a188d5a3d770f0d270824f12b3e8bfa1f82a0 100644 --- a/src/nodeinfo.c +++ b/src/nodeinfo.c @@ -977,6 +977,12 @@ linuxGetCPUPresentPath(const char *sysfs_prefix) return linuxGetCPUGlobalPath(sysfs_prefix, "present"); } +static char * +linuxGetCPUOnlinePath(const char *sysfs_prefix) +{ + return linuxGetCPUGlobalPath(sysfs_prefix, "online"); +} + /* Determine the maximum cpu id from a Linux sysfs cpu/present file. */ static int linuxParseCPUmax(const char *path) @@ -1317,7 +1323,7 @@ nodeGetCPUBitmap(const char *sysfs_prefix ATTRIBUTE_UNUSED, if (present < 0) return NULL; - if (virAsprintf(&online_path, "%s/cpu/online", prefix) < 0) + if (!(online_path = linuxGetCPUOnlinePath(sysfs_prefix))) return NULL; if (virFileExists(online_path)) { cpumap = linuxParseCPUmap(present, online_path);