From 0ca460eada8fc67f87a556e2b46efaabf67f9925 Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Wed, 3 Jun 2009 13:29:23 +0000 Subject: [PATCH] Implement capabilities and nodeinfo APIs --- ChangeLog | 4 ++++ src/lxc_driver.c | 22 ++++++++++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index efc51dba07..1566a53159 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Wed Jun 3 14:29:52 BST 2009 Daniel P. Berrange + + * src/lxc_driver.c: Implement capabilities and nodeinfo APIs + Wed Jun 3 14:28:52 BST 2009 Daniel P. Berrange Generic shared impls of all NUMA apis diff --git a/src/lxc_driver.c b/src/lxc_driver.c index 0109f15f80..f2279a7f7e 100644 --- a/src/lxc_driver.c +++ b/src/lxc_driver.c @@ -47,6 +47,7 @@ #include "veth.h" #include "event.h" #include "cgroup.h" +#include "nodeinfo.h" #define VIR_FROM_THIS VIR_FROM_LXC @@ -115,6 +116,19 @@ static int lxcClose(virConnectPtr conn) return 0; } +static char *lxcGetCapabilities(virConnectPtr conn) { + lxc_driver_t *driver = conn->privateData; + char *xml; + + lxcDriverLock(driver); + if ((xml = virCapabilitiesFormatXML(driver->caps)) == NULL) + virReportOOMError(conn); + lxcDriverUnlock(driver); + + return xml; +} + + static virDomainPtr lxcDomainLookupByID(virConnectPtr conn, int id) { @@ -1429,8 +1443,8 @@ static virDriver lxcDriver = { lxcVersion, /* version */ lxcGetHostname, /* getHostname */ NULL, /* getMaxVcpus */ - NULL, /* nodeGetInfo */ - NULL, /* getCapabilities */ + nodeGetInfo, /* nodeGetInfo */ + lxcGetCapabilities, /* getCapabilities */ lxcListDomains, /* listDomains */ lxcNumDomains, /* numOfDomains */ lxcDomainCreateAndStart, /* domainCreateXML */ @@ -1478,8 +1492,8 @@ static virDriver lxcDriver = { NULL, /* domainInterfaceStats */ NULL, /* domainBlockPeek */ NULL, /* domainMemoryPeek */ - NULL, /* nodeGetCellsFreeMemory */ - NULL, /* getFreeMemory */ + nodeGetCellsFreeMemory, /* nodeGetCellsFreeMemory */ + nodeGetFreeMemory, /* getFreeMemory */ NULL, /* domainEventRegister */ NULL, /* domainEventDeregister */ NULL, /* domainMigratePrepare2 */