Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e7b2dcc5 authored by Li Zefan's avatar Li Zefan Committed by Tejun Heo
Browse files

cgroup: remove cgroup_is_descendant()



It was used by ns cgroup, and ns cgroup was removed long ago.

Signed-off-by: default avatarLi Zefan <lizefan@huawei.com>
Signed-off-by: default avatarTejun Heo <tj@kernel.org>
parent cfb5966b
Loading
Loading
Loading
Loading
+0 −3
Original line number Original line Diff line number Diff line
@@ -448,9 +448,6 @@ int cgroup_path(const struct cgroup *cgrp, char *buf, int buflen);


int cgroup_task_count(const struct cgroup *cgrp);
int cgroup_task_count(const struct cgroup *cgrp);


/* Return true if cgrp is a descendant of the task's cgroup */
int cgroup_is_descendant(const struct cgroup *cgrp, struct task_struct *task);

/*
/*
 * Control Group taskset, used to pass around set of tasks to cgroup_subsys
 * Control Group taskset, used to pass around set of tasks to cgroup_subsys
 * methods.
 * methods.
+0 −28
Original line number Original line Diff line number Diff line
@@ -5035,34 +5035,6 @@ void cgroup_exit(struct task_struct *tsk, int run_callbacks)
	put_css_set_taskexit(cg);
	put_css_set_taskexit(cg);
}
}


/**
 * cgroup_is_descendant - see if @cgrp is a descendant of @task's cgrp
 * @cgrp: the cgroup in question
 * @task: the task in question
 *
 * See if @cgrp is a descendant of @task's cgroup in the appropriate
 * hierarchy.
 *
 * If we are sending in dummytop, then presumably we are creating
 * the top cgroup in the subsystem.
 *
 * Called only by the ns (nsproxy) cgroup.
 */
int cgroup_is_descendant(const struct cgroup *cgrp, struct task_struct *task)
{
	int ret;
	struct cgroup *target;

	if (cgrp == dummytop)
		return 1;

	target = task_cgroup_from_root(task, cgrp->root);
	while (cgrp != target && cgrp!= cgrp->top_cgroup)
		cgrp = cgrp->parent;
	ret = (cgrp == target);
	return ret;
}

static void check_for_release(struct cgroup *cgrp)
static void check_for_release(struct cgroup *cgrp)
{
{
	/* All of these checks rely on RCU to keep the cgroup
	/* All of these checks rely on RCU to keep the cgroup