Skip to content

Commit

Permalink
cgroups: kill monitor_full_path
Browse files Browse the repository at this point in the history
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
  • Loading branch information
Christian Brauner committed Feb 26, 2021
1 parent c0fb6f3 commit e4f23a0
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 12 deletions.
12 changes: 5 additions & 7 deletions src/lxc/cgroups/cgfsng.c
Expand Up @@ -1172,7 +1172,6 @@ static bool cgroup_tree_create(struct cgroup_ops *ops, struct lxc_conf *conf,
h->container_limit_path = h->container_full_path;
} else {
h->cgfd_mon = move_fd(fd_final);
h->monitor_full_path = move_ptr(path);
}

return true;
Expand All @@ -1199,7 +1198,6 @@ static void cgroup_tree_prune_leaf(struct hierarchy *h, const char *path_prune,
if (h->cgfd_mon < 0)
prune = false;

free_disarm(h->monitor_full_path);
close_prot_errno_disarm(h->cgfd_mon);
}

Expand Down Expand Up @@ -1384,7 +1382,7 @@ __cgfsng_ops static bool cgfsng_monitor_create(struct cgroup_ops *ops, struct lx
monitor_cgroup, NULL, false))
continue;

DEBUG("Failed to create cgroup \"%s\"", maybe_empty(ops->hierarchies[i]->monitor_full_path));
DEBUG("Failed to create cgroup %s)", monitor_cgroup);
for (int j = 0; j <= i; j++)
cgroup_tree_prune_leaf(ops->hierarchies[j],
monitor_cgroup, false);
Expand Down Expand Up @@ -1546,18 +1544,18 @@ __cgfsng_ops static bool cgfsng_monitor_enter(struct cgroup_ops *ops,

ret = lxc_writeat(h->cgfd_mon, "cgroup.procs", monitor, monitor_len);
if (ret)
return log_error_errno(false, errno, "Failed to enter cgroup \"%s\"", h->monitor_full_path);
return log_error_errno(false, errno, "Failed to enter cgroup %d", h->cgfd_mon);

TRACE("Moved monitor into %s cgroup via %d", h->monitor_full_path, h->cgfd_mon);
TRACE("Moved monitor into cgroup %d", h->cgfd_mon);

if (handler->transient_pid <= 0)
continue;

ret = lxc_writeat(h->cgfd_mon, "cgroup.procs", transient, transient_len);
if (ret)
return log_error_errno(false, errno, "Failed to enter cgroup \"%s\"", h->monitor_full_path);
return log_error_errno(false, errno, "Failed to enter cgroup %d", h->cgfd_mon);

TRACE("Moved transient process into %s cgroup via %d", h->monitor_full_path, h->cgfd_mon);
TRACE("Moved transient process into cgroup %d", h->cgfd_mon);

/*
* we don't keep the fds for non-unified hierarchies around
Expand Down
6 changes: 1 addition & 5 deletions src/lxc/cgroups/cgroup.h
Expand Up @@ -62,9 +62,6 @@ typedef enum {
* - The full path to the container's limiting cgroup. May simply point to
* container_full_path.
*
* @monitor_full_path
* - The full path to the monitor's cgroup.
*
* @version
* - legacy hierarchy
* If the hierarchy is a legacy hierarchy this will be set to
Expand All @@ -84,7 +81,6 @@ struct hierarchy {
char *container_base_path;
char *container_full_path;
char *container_limit_path;
char *monitor_full_path;
int version;

/* cgroup2 only */
Expand All @@ -101,7 +97,7 @@ struct hierarchy {
*/
int cgfd_limit;

/* File descriptor for the monitor's cgroup @monitor_full_path. */
/* File descriptor for the monitor's cgroup. */
int cgfd_mon;

/* File descriptor for the controller's mountpoint @mountpoint. */
Expand Down

0 comments on commit e4f23a0

Please sign in to comment.