On Fri, Feb 14, 2014 at 06:49:00PM +0100, Thorsten Behrens wrote:
---
Notes to v4:
- check errors before filling param array
- UL->ULL change punted to separate patch
src/lxc/lxc_driver.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index f735631..827d989 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -5197,6 +5197,61 @@ lxcNodeGetInfo(virConnectPtr conn,
static int
+lxcDomainMemoryStats(virDomainPtr dom,
+ struct _virDomainMemoryStat *stats,
+ unsigned int nr_stats,
+ unsigned int flags)
+{
+ virDomainObjPtr vm;
+ int ret = -1;
+ virLXCDomainObjPrivatePtr priv;
+ unsigned long long swap_usage;
+ unsigned long mem_usage;
+
+ virCheckFlags(0, -1);
+
+ if (!(vm = lxcDomObjFromDomain(dom)))
+ goto cleanup;
+
+ priv = vm->privateData;
+
+ if (virDomainMemoryStatsEnsureACL(dom->conn, vm->def) < 0)
+ goto cleanup;
+
+ if (!virCgroupGetMemSwapUsage(priv->cgroup, &swap_usage))
+ goto cleanup;
+
+ if (!virCgroupGetMemoryUsage(priv->cgroup, &mem_usage))
+ goto cleanup;
+
+ ret = 0;
+ if (!virDomainObjIsActive(vm))
+ goto cleanup;
This has to be higher up and raise VIR_ERR_OPERATION_INVALID
to prevent us accessing a NULL priv->cgroup.
ACK, I'll make that fix before pushing
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|