From: Tomáš Ryšavý Date: Thu, 15 Sep 2016 08:27:07 +0000 (+0200) Subject: test driver: Implement testNodeGetFreeMemory X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=13ae5da9e3d74d816a46203f3667081ff57c4aa9;p=libvirt.git test driver: Implement testNodeGetFreeMemory Signed-off-by: Tomáš Ryšavý Signed-off-by: Michal Privoznik --- diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 7ff8e28cdb..310f2ee180 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -74,6 +74,7 @@ VIR_LOG_INIT("test.test_driver"); struct _testCell { unsigned long mem; + unsigned long freeMem; int numCpus; virCapsHostNUMACellCPU cpus[MAX_CPUS]; }; @@ -1268,6 +1269,7 @@ testOpenDefault(virConnectPtr conn) for (u = 0; u < privconn->numCells; ++u) { privconn->cells[u].numCpus = 8; privconn->cells[u].mem = (u + 1) * 2048 * 1024; + privconn->cells[u].freeMem = (u + 1) * 1024 * 1024; } for (u = 0; u < 16; u++) { virBitmapPtr siblings = virBitmapNew(16); @@ -2756,6 +2758,22 @@ testNodeGetCPUStats(virConnectPtr conn ATTRIBUTE_UNUSED, return 0; } +static unsigned long long +testNodeGetFreeMemory(virConnectPtr conn) +{ + testDriverPtr privconn = conn->privateData; + unsigned int freeMem = 0; + size_t i; + + testDriverLock(privconn); + + for (i = 0; i < privconn->numCells; i++) + freeMem += privconn->cells[i].freeMem; + + testDriverUnlock(privconn); + return freeMem; +} + static int testDomainCreateWithFlags(virDomainPtr domain, unsigned int flags) { testDriverPtr privconn = domain->conn->privateData; @@ -6748,6 +6766,7 @@ static virHypervisorDriver testHypervisorDriver = { .connectGetMaxVcpus = testConnectGetMaxVcpus, /* 0.3.2 */ .nodeGetInfo = testNodeGetInfo, /* 0.1.1 */ .nodeGetCPUStats = testNodeGetCPUStats, /* 2.3.0 */ + .nodeGetFreeMemory = testNodeGetFreeMemory, /* 2.3.0 */ .connectGetCapabilities = testConnectGetCapabilities, /* 0.2.1 */ .connectGetSysinfo = testConnectGetSysinfo, /* 2.3.0 */ .connectGetType = testConnectGetType, /* 2.3.0 */