Re: [PATCH 4/4] cgroup: implement task_cgroup_path_from_hierarchy()

From: Li Zefan
Date: Sun Apr 14 2013 - 23:50:39 EST


On 2013/4/15 11:46, Tejun Heo wrote:
> On Mon, Apr 15, 2013 at 11:43:15AM +0800, Li Zefan wrote:
>>> +int task_cgroup_path_from_hierarchy(struct task_struct *task, int hierarchy_id,
>>> + char *buf, size_t buflen)
>>> +{
>>> + struct cgroupfs_root *root;
>>> + struct cgroup *cgrp = NULL;
>>> + int ret = -ENOENT;
>>> +
>>> + mutex_lock(&cgroup_mutex);
>>> +
>>> + root = idr_find(&cgroup_hierarchy_idr, hierarchy_id);
>>> + if (root) {
>>> + cgrp = task_cgroup_from_root(task, root);
>>
>> task_cgroup_from_root() will never return NULL, and there's a BUG_ON(!res) in it.
>
> @hierarchy_id may come from userland, so we probably should update
> task_cgroup_from_root() to return NULL if the id is invalid. Will add
> a patch.
>

But if id is invalid, idr_find() will return NULL. As long as root is not NULL,
task_cgroup_from_root() will always return a valid cgroup.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/