virCapabilitiesClearHostNUMACellCPUTopology(cell->cpus, cell->ncpus);
g_free(cell->cpus);
- g_free(cell->siblings);
+ g_free(cell->distances);
g_free(cell->pageinfo);
g_free(cell);
}
* @mem: Total size of memory in the NUMA node (in KiB)
* @ncpus: number of CPUs in cell
* @cpus: array of CPU definition structures
- * @nsiblings: number of sibling NUMA nodes
- * @siblings: info on sibling NUMA nodes
+ * @ndistances: number of sibling NUMA nodes
+ * @distances: NUMA distances to other nodes
* @npageinfo: number of pages at node @num
* @pageinfo: info on each single memory page
*
unsigned long long mem,
int ncpus,
virCapsHostNUMACellCPU **cpus,
- int nsiblings,
- virCapsHostNUMACellSiblingInfo **siblings,
+ int ndistances,
+ virCapsHostNUMACellDistance **distances,
int npageinfo,
virCapsHostNUMACellPageInfo **pageinfo)
{
cell->ncpus = ncpus;
cell->cpus = g_steal_pointer(cpus);
}
- if (siblings) {
- cell->nsiblings = nsiblings;
- cell->siblings = g_steal_pointer(siblings);
+ if (distances) {
+ cell->ndistances = ndistances;
+ cell->distances = g_steal_pointer(distances);
}
if (pageinfo) {
cell->npageinfo = npageinfo;
cell->pageinfo[j].avail);
}
- if (cell->nsiblings) {
+ if (cell->ndistances) {
virBufferAddLit(buf, "<distances>\n");
virBufferAdjustIndent(buf, 2);
- for (j = 0; j < cell->nsiblings; j++) {
+ for (j = 0; j < cell->ndistances; j++) {
virBufferAsprintf(buf, "<sibling id='%d' value='%d'/>\n",
- cell->siblings[j].node,
- cell->siblings[j].distance);
+ cell->distances[j].node,
+ cell->distances[j].distance);
}
virBufferAdjustIndent(buf, -2);
virBufferAddLit(buf, "</distances>\n");
}
static int
-virCapabilitiesGetNUMASiblingInfo(int node,
- virCapsHostNUMACellSiblingInfo **siblings,
- int *nsiblings)
+virCapabilitiesGetNUMADistances(int node,
+ virCapsHostNUMACellDistance **distancesRet,
+ int *ndistancesRet)
{
- virCapsHostNUMACellSiblingInfo *tmp = NULL;
+ virCapsHostNUMACellDistance *tmp = NULL;
int tmp_size = 0;
int ret = -1;
int *distances = NULL;
goto cleanup;
if (!distances) {
- *siblings = NULL;
- *nsiblings = 0;
+ *distancesRet = NULL;
+ *ndistancesRet = 0;
return 0;
}
- tmp = g_new0(virCapsHostNUMACellSiblingInfo, ndistances);
+ tmp = g_new0(virCapsHostNUMACellDistance, ndistances);
for (i = 0; i < ndistances; i++) {
if (!distances[i])
VIR_REALLOC_N(tmp, tmp_size);
- *nsiblings = tmp_size;
- *siblings = g_steal_pointer(&tmp);
+ *ndistancesRet = tmp_size;
+ *distancesRet = g_steal_pointer(&tmp);
tmp_size = 0;
ret = 0;
cleanup:
for (n = 0; n <= max_node; n++) {
g_autoptr(virBitmap) cpumap = NULL;
- g_autofree virCapsHostNUMACellSiblingInfo *siblings = NULL;
- int nsiblings = 0;
+ g_autofree virCapsHostNUMACellDistance *distances = NULL;
+ int ndistances = 0;
g_autofree virCapsHostNUMACellPageInfo *pageinfo = NULL;
int npageinfo;
unsigned long long memory;
}
}
- if (virCapabilitiesGetNUMASiblingInfo(n, &siblings, &nsiblings) < 0)
- goto cleanup;
+ if (virCapabilitiesGetNUMADistances(n, &distances, &ndistances) < 0)
+ return -1;
if (virCapabilitiesGetNUMAPagesInfo(n, &pageinfo, &npageinfo) < 0)
goto cleanup;
virCapabilitiesHostNUMAAddCell(caps, n, memory,
ncpus, &cpus,
- nsiblings, &siblings,
+ ndistances, &distances,
npageinfo, &pageinfo);
}
virBitmap *siblings;
};
-struct _virCapsHostNUMACellSiblingInfo {
+struct _virCapsHostNUMACellDistance {
int node; /* foreign NUMA node */
unsigned int distance; /* distance to the node */
};
int ncpus;
unsigned long long mem; /* in kibibytes */
virCapsHostNUMACellCPU *cpus;
- int nsiblings;
- virCapsHostNUMACellSiblingInfo *siblings;
+ int ndistances;
+ virCapsHostNUMACellDistance *distances;
int npageinfo;
virCapsHostNUMACellPageInfo *pageinfo;
};
unsigned long long mem,
int ncpus,
virCapsHostNUMACellCPU **cpus,
- int nsiblings,
- virCapsHostNUMACellSiblingInfo **siblings,
+ int ndistances,
+ virCapsHostNUMACellDistance **distances,
int npageinfo,
virCapsHostNUMACellPageInfo **pageinfo);
{
libxl_numainfo *numa_info = NULL;
libxl_cputopology *cpu_topo = NULL;
- int nr_nodes = 0, nr_cpus = 0, nr_siblings = 0;
+ int nr_nodes = 0, nr_cpus = 0, nr_distances = 0;
virCapsHostNUMACellCPU **cpus = NULL;
- virCapsHostNUMACellSiblingInfo *siblings = NULL;
+ virCapsHostNUMACellDistance *distances = NULL;
int *nr_cpus_node = NULL;
size_t i;
int ret = -1;
if (numa_info[i].size == LIBXL_NUMAINFO_INVALID_ENTRY)
continue;
- nr_siblings = numa_info[i].num_dists;
- if (nr_siblings) {
+ nr_distances = numa_info[i].num_dists;
+ if (nr_distances) {
size_t j;
- siblings = g_new0(virCapsHostNUMACellSiblingInfo, nr_siblings);
+ distances = g_new0(virCapsHostNUMACellDistance, nr_distances);
- for (j = 0; j < nr_siblings; j++) {
- siblings[j].node = j;
- siblings[j].distance = numa_info[i].dists[j];
+ for (j = 0; j < nr_distances; j++) {
+ distances[j].node = j;
+ distances[j].distance = numa_info[i].dists[j];
}
}
virCapabilitiesHostNUMAAddCell(caps->host.numa, i,
numa_info[i].size / 1024,
nr_cpus_node[i], &cpus[i],
- nr_siblings, &siblings,
+ nr_distances, &distances,
0, NULL);
/* This is safe, as the CPU list is now stored in the NUMA cell */
virCapabilitiesHostNUMAUnref(caps->host.numa);
caps->host.numa = NULL;
}
- VIR_FREE(siblings);
+ VIR_FREE(distances);
}
VIR_FREE(cpus);