]> xenbits.xensource.com Git - libvirt.git/commitdiff
add interface virCgroupGetAppRoot
authorGao feng <gaofeng@cn.fujitsu.com>
Mon, 12 Nov 2012 07:02:26 +0000 (15:02 +0800)
committerDaniel P. Berrange <berrange@redhat.com>
Wed, 28 Nov 2012 10:28:49 +0000 (10:28 +0000)
because libvirt_lxc's cgroup mountpoint is what it shown
in /proc/self/cgroup.

we can get container's cgroup through virCgroupNew("/", &group),
add interface virCgroupGetAppRoot to help container to
get it's cgroup.

Signed-off-by: Gao feng <gaofeng@cn.fujitsu.com>
src/libvirt_private.syms
src/util/cgroup.c
src/util/cgroup.h

index c1eaf6f498fba6908cb47b1b0117673ad31c475c..2573b8acf1037f5f1b8bfd7a88ad32e3f3f0f34a 100644 (file)
@@ -85,6 +85,7 @@ virCgroupDenyDeviceMajor;
 virCgroupDenyDevicePath;
 virCgroupForDomain;
 virCgroupForDriver;
+virCgroupGetAppRoot;
 virCgroupForEmulator;
 virCgroupForVcpu;
 virCgroupFree;
index f0f9209ab186037a6c70265c01769a19f1937192..9e78314331b535ac324a7dddcea333bd5ec724f9 100644 (file)
@@ -965,6 +965,21 @@ int virCgroupForDriver(const char *name ATTRIBUTE_UNUSED,
 }
 #endif
 
+/**
+* virCgroupGetAppRoot:
+*
+* @group: Pointer to returned virCgroupPtr
+*
+* Returns 0 on success
+*/
+int virCgroupGetAppRoot(virCgroupPtr *group)
+{
+#if defined HAVE_MNTENT_H && defined HAVE_GETMNTENT_R
+    return virCgroupNew("/", group);
+#else
+    return -ENXIO;
+#endif
+}
 
 /**
  * virCgroupForDomain:
index 0c11eb1a1d9891e73e42f4455e4363801541c0eb..e26f65f13b52026088c4aeb2839f5b40d0848761 100644 (file)
@@ -47,6 +47,8 @@ int virCgroupForDriver(const char *name,
                        int privileged,
                        int create);
 
+int virCgroupGetAppRoot(virCgroupPtr *group);
+
 int virCgroupForDomain(virCgroupPtr driver,
                        const char *name,
                        virCgroupPtr *group,