virBufferAddLit(buf, "<numa>\n");
virBufferAdjustIndent(buf, 2);
for (i = 0; i < ncells; i++) {
- memAccess = def->cells[i].memAccess;
+ memAccess = virDomainNumaGetNodeMemoryAccessMode(def, i);
if (!(cpustr = virBitmapFormat(virDomainNumaGetNodeCpumask(def, i))))
return -1;
{
return numa->cells[node].cpumask;
}
+
+
+virNumaMemAccess
+virDomainNumaGetNodeMemoryAccessMode(virCPUDefPtr numa,
+ size_t node)
+{
+ return numa->cells[node].memAccess;
+}
virBitmapPtr virDomainNumaGetNodeCpumask(virCPUDefPtr numa,
size_t node)
ATTRIBUTE_NONNULL(1);
+virNumaMemAccess virDomainNumaGetNodeMemoryAccessMode(virCPUDefPtr numa,
+ size_t node)
+ ATTRIBUTE_NONNULL(1);
/*
* Formatters
virDomainNumaFree;
virDomainNumaGetNodeCount;
virDomainNumaGetNodeCpumask;
+virDomainNumaGetNodeMemoryAccessMode;
virDomainNumaNew;
virDomainNumatuneFormatNodeset;
virDomainNumatuneFormatXML;
virDomainHugePagePtr hugepage = NULL;
virDomainNumatuneMemMode mode;
const long system_page_size = virGetSystemPageSizeKB();
- virNumaMemAccess memAccess = def->cpu->cells[guestNode].memAccess;
+ virNumaMemAccess memAccess = virDomainNumaGetNodeMemoryAccessMode(def->cpu, guestNode);
+
size_t i;
char *mem_path = NULL;
virBitmapPtr nodemask = NULL;
if (rc == 0)
needBackend = true;
} else {
- if (def->cpu->cells[i].memAccess) {
+ if (virDomainNumaGetNodeMemoryAccessMode(def->cpu, i)) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("Shared memory mapping is not supported "
"with this QEMU"));