diff --git a/src/conf/numa_conf.c b/src/conf/numa_conf.c index 9caa655aca61734f07d4a4996a9f0ce7f6b86e21..517eaa14390e1daa125be658253db024fc06ca17 100644 --- a/src/conf/numa_conf.c +++ b/src/conf/numa_conf.c @@ -894,3 +894,16 @@ virDomainNumaSetNodeMemorySize(virDomainNumaPtr numa, { numa->mem_nodes[node].mem = size; } + + +unsigned long long +virDomainNumaGetMemorySize(virDomainNumaPtr numa) +{ + size_t i; + unsigned long long ret = 0; + + for (i = 0; i < numa->nmem_nodes; i++) + ret += numa->mem_nodes[i].mem; + + return ret; +} diff --git a/src/conf/numa_conf.h b/src/conf/numa_conf.h index dc2ce58212f5a1cd2cd9d3e2c8b3f22e336b7914..ded6e019ec2586b06923e6ae4b466d6109be028e 100644 --- a/src/conf/numa_conf.h +++ b/src/conf/numa_conf.h @@ -95,6 +95,8 @@ virNumaMemAccess virDomainNumaGetNodeMemoryAccessMode(virDomainNumaPtr numa, unsigned long long virDomainNumaGetNodeMemorySize(virDomainNumaPtr numa, size_t node) ATTRIBUTE_NONNULL(1); +unsigned long long virDomainNumaGetMemorySize(virDomainNumaPtr numa) + ATTRIBUTE_NONNULL(1); /* * Formatters diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index ba05cc6882c365b2fe698ad6666344652278a718..496b0522bbfef3d5a5c67e33dc3cfbdaae8abfc7 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -630,6 +630,7 @@ virNodeDeviceObjUnlock; virDomainNumaCheckABIStability; virDomainNumaEquals; virDomainNumaFree; +virDomainNumaGetMemorySize; virDomainNumaGetNodeCount; virDomainNumaGetNodeCpumask; virDomainNumaGetNodeMemoryAccessMode;