chiark / gitweb /
cgls: add --machine/-M
[elogind.git] / src / nspawn / nspawn.c
index d772b478fd8fd3cc6f51defcb32e771f2778b967..bbb3334ba1a2cfb023f3f9451ddf2030df07e248 100644 (file)
@@ -1217,7 +1217,7 @@ finish:
 int main(int argc, char *argv[]) {
         pid_t pid = 0;
         int r = EXIT_FAILURE, k;
-        _cleanup_free_ char *machine_root = NULL, *name = NULL, *escaped = NULL, *newcg = NULL;
+        _cleanup_free_ char *newcg = NULL;
         _cleanup_close_ int master = -1;
         int n_fd_passed;
         const char *console = NULL;
@@ -1301,30 +1301,12 @@ int main(int argc, char *argv[]) {
         fdset_close_others(fds);
         log_open();
 
-        k = cg_get_machine_path(&machine_root);
+        k = cg_get_machine_path(arg_machine, &newcg);
         if (k < 0) {
                 log_error("Failed to determine machine cgroup path: %s", strerror(-k));
                 goto finish;
         }
 
-        name = strappend(arg_machine, ".nspawn");
-        if (!name) {
-                log_oom();
-                goto finish;
-        }
-
-        escaped = cg_escape(name);
-        if (!escaped) {
-                log_oom();
-                goto finish;
-        }
-
-        newcg = strjoin(machine_root, "/", escaped, NULL);
-        if (!newcg) {
-                log_oom();
-                goto finish;
-        }
-
         k = cg_is_empty_recursive(SYSTEMD_CGROUP_CONTROLLER, newcg, true);
         if (k <= 0 && k != -ENOENT) {
                 log_error("Container already running.");