#include "af_unix.h"
#include "attach.h"
#include "caps.h"
-#include "cgroup.h"
+#include "cgroups/cgroup.h"
+#include "cgroups/cgroup_utils.h"
#include "commands.h"
#include "conf.h"
#include "config.h"
#include <stdio.h>
#include "compiler.h"
+#include "file_utils.h"
/* Retrieve the cgroup version of a given entry from /proc/<pid>/mountinfo. */
__hidden extern int get_cgroup_version(char *line);
__hidden extern int unified_cgroup_fd(int fd);
+static inline bool cgns_supported(void)
+{
+ static int supported = -1;
+
+ if (supported == -1)
+ supported = file_exists("/proc/self/ns/cgroup");
+
+ return supported == 1;
+}
+
#endif /* __LXC_CGROUP_UTILS_H */
#include <unistd.h>
#include "caps.h"
+#include "cgroups/cgroup_utils.h"
#include "conf.h"
#include "config.h"
#include "initutils.h"
#include "af_unix.h"
#include "caps.h"
-#include "cgroup.h"
+#include "cgroups/cgroup.h"
+#include "cgroups/cgroup_utils.h"
#include "commands.h"
#include "commands_utils.h"
#include "compiler.h"
return NULL;
}
-bool cgns_supported(void)
-{
- return file_exists("/proc/self/ns/cgroup");
-}
-
/* historically lxc-init has been under /usr/lib/lxc and under
* /usr/lib/$ARCH/lxc. It now lives as $prefix/sbin/init.lxc.
*/
__hidden extern int detect_shared_rootfs(void);
__hidden extern bool detect_ramfs_rootfs(void);
__hidden extern char *on_path(const char *cmd, const char *rootfs);
-__hidden extern bool cgns_supported(void);
__hidden extern char *choose_init(const char *rootfs);
__hidden extern bool switch_to_ns(pid_t pid, const char *ns);
__hidden extern char *get_template_path(const char *t);
#include <sys/stat.h>
#include <sys/types.h>
+#include "cgroups/cgroup_utils.h"
#include "lxctest.h"
#include "namespace.h"
#include "process_utils.h"