summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/get_all_controller.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/get_all_controller.c b/tests/get_all_controller.c
new file mode 100644
index 0000000..3df3ca8
--- /dev/null
+++ b/tests/get_all_controller.c
@@ -0,0 +1,34 @@
+#include <libcgroup.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int main()
+{
+ int error;
+ void *handle;
+ struct controller_data info;
+
+ error = cgroup_init();
+
+ if (error) {
+ printf("cgroup_init failed with %s\n", cgroup_strerror(error));
+ exit(1);
+ }
+
+ error = cgroup_get_all_controller_begin(&handle, &info);
+
+ while (error != ECGEOF) {
+ printf("Controller %10s %5d %5d %5d\n", info.name,
+ info.hierarchy, info.num_cgroups, info.enabled);
+ error = cgroup_get_all_controller_next(&handle, &info);
+ if (error && error != ECGEOF) {
+ printf("cgroup_get_contrller_next failed with %s\n",
+ cgroup_strerror(error));
+ exit(1);
+ }
+ }
+
+ error = cgroup_get_all_controller_end(&handle);
+
+ return 0;
+}